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

C++ 类定义是否可以包含该类';C+中的指针+;?,c++,oop,pointers,C++,Oop,Pointers,我试图以这种方式(简化)定义一个类: C++中是否合法,是否与面向对象的设计一致? < P>是的,一个类可以存储指向同一类型对象的指针(可能是它自己,或者其他实例)。 这在链表实现中很常见,其中一个节点存储指向下一个节点的指针 至于它是否“与面向对象的设计相一致”,我们不可能对这一主题进行概括;这取决于节目。就我个人而言,我对这种形式的代码持怀疑态度,但你也不能真正概括。是的,一个类可能存储指向同一类型对象的指针(可能是它本身,或者其他实例) 这在链表实现中很常见,其中一个节点存储指向下一个节

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


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

< P>是的,一个类可以存储指向同一类型对象的指针(可能是它自己,或者其他实例)。 这在链表实现中很常见,其中一个节点存储指向下一个节点的指针


至于它是否“与面向对象的设计相一致”,我们不可能对这一主题进行概括;这取决于节目。就我个人而言,我对这种形式的代码持怀疑态度,但你也不能真正概括。

是的,一个类可能存储指向同一类型对象的指针(可能是它本身,或者其他实例)

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


至于它是否“与面向对象的设计相一致”,我们不可能对这一主题进行概括;这取决于节目。就我个人而言,我对这种形式的代码持怀疑态度,但你也不能真正概括。

是的,它是合法的。它是否是一个好的设计取决于你将如何使用它。@NeilButterworth:你为什么在评论部分回答?@Lightness,因为我想回答。因为我认为这是一个骗局。有人能告诉我们这在什么方面与OO设计不一致吗?@NeilButterworth:这两个都是不好的原因。好的,是的,这是合法的。它是否是一个好的设计取决于你将如何使用它。@NeilButterworth:你为什么在评论部分回答?@Lightness,因为我想回答。因为我认为这是一个骗局。有人能告诉我们这在什么方面与OO设计不一致吗?@NeilButterworth:这两个都是不好的原因。好的。这样的类是“递归定义的”。所以你对链表有怀疑吗?@ChiefTwoPencils:不,它们不是。@EJP:有时。有时为什么?树呢?这样的类是“递归定义的”。所以你对链表有怀疑吗?@ChiefTwoPencils:不,它们不是。@EJP:有时。有时为什么?树呢?
class Student
{
    private:
        Student* pointer;
    public:
        set_pointer(Student*);
}