类定义是否可以在C ++中包含该类的指针?

时间:2018-02-18 22:08:10

标签: c++ oop pointers

我正试图以这种方式定义一个类(简化):

class Student
{
    private:
        Student* pointer;
    public:
        set_pointer(Student*);
}

这在C ++中是否合法,是否与面向对象设计一致?

1 个答案:

答案 0 :(得分:2)

是的,类可以存储指向同一类型对象的指针(可能是其自身或其他实例)。

这在链表实现中很常见,其中节点存储指向 next 节点的指针。

至于它是否与面向对象设计一致,不可能对这个主题进行概括;这取决于程序。就个人而言,我对这个表格的代码持怀疑态度,但你再也无法概括。