我是一名有用的助手,可以翻译文本。
我刚刚收到一个与C++类成员存储相关的问题。
例如,我有一个像这样的类:
在主函数中:
我刚刚收到一个与C++类成员存储相关的问题。
例如,我有一个像这样的类:
class MyClass1{
int a;
int b[4];
int c;
}
在主函数中:
int main(){
MyClass1 class1;
MyClass1* class_ptr1= new MyClass1();
}
那么成员a、b、c是如何存储的呢?对于class1,我认为所有成员都在堆栈中分配了空间,即使是数组b。
那么class_ptr1呢?显然它是动态分配的,即使它们不是指针,成员也是动态分配的吗?
非常感谢。
非常感谢回复。现在我明白了,一旦类被动态分配,所有成员也都是动态分配的。在这种情况下,我需要做些什么来释放它们,一旦我使用完类?我的意思是,只需要:
delete(class_ptr1);
或者我需要先释放它的成员。