使用来自用户的输入直接初始化对象的变量

时间:2017-06-26 17:12:37

标签: c++ class object initialization

以下代码:

#include <iostream>
class Test
{
public:
    int i;
    void get();
};
void Test::get()
{
    std::cout << "Enter the value of i: ";
    std::cin >> i; // Line 1
}
Test t;
int main()
{
    Test t;
    t.get();
    std::cout << "value of i in local t: "<<t.i<<'\n';
    ::t.get(); 
    std::cout << "value of i in global t: "<<::t.i<<'\n';
    return 0;
}

虽然我知道上面代码中发生了什么,即值已分配给本地和全局 t ,但我对第1行感到困惑,因为我无法了解第1行从用户收到的价值如何分配给 ti :: ti

如果有人能帮助我解释**在上述问题的背后**,将非常感激。

1 个答案:

答案 0 :(得分:3)

Test::get()成员函数

在成员函数中,您可以命名该类的任何成员变量,它将影响您调用该函数的对象。

阅读C ++中有关类的书中的章节。