我们可以在类声明中声明类的类型的指针吗?

时间:2014-03-02 15:53:31

标签: c++ class pointers

我知道结构可能是这样的:

struct A{
    A* p;
};

但我们可以这样做吗:

class B{
    B*p;
}

我试图谷歌,但最终没有找到它。非常感谢你!

2 个答案:

答案 0 :(得分:4)

是。使用struct声明的类与使用class声明的类除了成员和基数的默认访问权限之间没有区别。

答案 1 :(得分:1)

是的,类可以包含指向同一类的类的指针,表示该类的符号可以出现在函数的签名中或该类中定义的函数体中。此外,应该注意的是,在C ++中,structclass只有一个区别 - 结构的默认访问级别是“public”,而类的默认访问级别是“私有的”(当然,为了改变访问级别,可以在开头的任何一个开头写一个“public:”或“private:”;只有这样才会导致“class”被用于包含类型的类更多功能,封装和纯数据对象的“结构”。