如何访问正确的 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 上的这一部分。