如何访问正确的 class 成员?
How to access correct class member?
我已经 运行 浏览了这段代码,执行后我发现一切都编译和执行正常(派生的 class 的 int 代码成员设置为 65)。但是我想知道如何才能访问派生 class?
的字符代码成员
#include <iostream>
using namespace std;
class base {
public:
base() : code('B') { }
char code;
};
class derived : public base
{
public:
int code;
};
int main(void)
{
derived d;
d.code = 65;
std::cout << d.code;
};
通过使用限定名称查找为基本成员变量指定正确的范围,如下所示:
d.base::code = 'x'
std::cout << d.base::code << '\n';
有关详细信息,请参阅 qualified name lookups 上的这一部分。
我已经 运行 浏览了这段代码,执行后我发现一切都编译和执行正常(派生的 class 的 int 代码成员设置为 65)。但是我想知道如何才能访问派生 class?
的字符代码成员#include <iostream>
using namespace std;
class base {
public:
base() : code('B') { }
char code;
};
class derived : public base
{
public:
int code;
};
int main(void)
{
derived d;
d.code = 65;
std::cout << d.code;
};
通过使用限定名称查找为基本成员变量指定正确的范围,如下所示:
d.base::code = 'x'
std::cout << d.base::code << '\n';
有关详细信息,请参阅 qualified name lookups 上的这一部分。