首页 新闻 搜索 专区 学院

类的数据成员

0
[待解决问题]

为什么定义类的数据成员时只有其他类的对象才可以作为该类的成员,而自身类的对象不可以作为自身类的成员存在?为什么自身类的指针又可以了

C++
harryy的主页 harryy | 菜鸟二级 | 园豆:202
提问于:2020-01-22 09:00
< >
分享
所有回答(4)
0

成员变量,成员变量,本质上是变量,不是数据类型。建议你好好去看看书吧

winslam | 园豆:188 (初学一级) | 2020-01-22 11:06
0

你能够用父类子类来实现这个啊,关键是要单一化,不能自身定义吧。。。

lzhdim | 园豆:659 (小虾三级) | 2020-01-24 18:13
1

类中的成员包含自己,就需要无穷的内存,比如类的名称叫A,那么A中有对象A,A中的A又要有A,这样会无限循环下去的,跟函数中没有其他代码而只是调用自己递归是一个道理

fenggwsx | 园豆:244 (菜鸟二级) | 2020-07-10 16:34
1

包含自身和包含自身的指针完全不是一个意思,定义一个指针不需要指向的东西的实际信息,只需要知道类型存在,指针自身的数据其实就是个地址而已
class A;//这是一个前置声明,告诉编译器A是个类啊
class B
{
A * p;//可以,指针就是几个字节,不管指向的是什么
A a;//不可以,不知道A到底有什么
void f()
{
p->x();//不可以,不知道A里面有没有x、x是什么
}
}

小猪猪佩奇 | 园豆:239 (菜鸟二级) | 2020-09-24 11:59
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册