c++ - 类内外部类&访问

标签 c++ class

这是我现在在 MyClass.hpp 中的内容:

class CLASS
{
    public:
        class AAA
        {
            public:
                char c_str[1024];
        };

        class BBB
        {
            public:
                int count;
        };
};

extern class CLASS              CLASS;
extern class CLASS::AAA         AAA;
extern class CLASS::BBB         BBB;

我的类.cpp:

class CLASS                 CLASS;
class CLASS::AAA            AAA;
class CLASS::BBB            BBB;

获取元素:

AAA.c_str = 0;
BBB.count = 0;

但我想得到这个访问变体:

CLASS.AAA.c_str = 0;
CLASS.BBB.count = 0;

……或者……

CLASS:AAA:c_str = 0;
CLASS:BBB:count = 0;

...那我该怎么办呢? :c

最佳答案

AAABBB 是独立对象,而不是 CLASS 类中的对象。您必须在 CLASS 类中声明 对象才能使其成为可能:

class CLASS
{
public:
    class AAA { ... };

    class BBB { ... };

    // Declare object of the above classes
    AAA aaa;
    BBB bbb;
};

CLASS cls;

cls.aaa.c_str[0] = 0;
cls.bbb.count = 0;

关于c++ - 类内外部类&访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12996548/

相关文章:

c++ - C2143 : syntax error: missing ';' before '*' & C4430: missing type specifier - int assumed. 注意:C++ 不支持default-int

java - java中的中缀到后缀的转换

c++ - 类定义中的段错误无法找出位置

algorithm - 复杂度等级 P 的性质

java - Java 中的类变量和类方法,我的错

c++ - C++0x 是否允许在函数签名中使用 decltype()?

c++ - 未知输入大小 cin

c++ - 显示 STL 数据时缺少面孔

c# - 由于保护级别而无法访问类属性

c++ - 在异步 TCP 服务器的上下文中从 N-theads 访问数据时的线程安全