如果基类有一个成员A,子类1需要使用这个A,子类2不需要使用这个A,那么这个A应该定义成对象还是指针?
收起
1.首先设计上应该是有问题的,既然子类2继承基类了,A自然就会成为子类2的成员,但是你认为不需要A了,所以设计上是有问题的,A应该作为子类1的成员,而不是基类的成员。2. 当然在现有的设计上,A定义为指针会更好一些,指针相对于普通对象更节省空间(可能你的A对象sizeof是34字节,但A指针的sizeof只占用8字节),另外也是认为在使用A的时候需要A了则new创建,不需要则是默认的空指针,减少无效的内存分配。
报告相同问题?