我正在创建一个像这样的新类实例:
Cube* cube1;
Cube
构造函数中有代码,但它没有运行!这通常吗?
答案 0 :(得分:6)
你实际上并没有创建任何实例。
您正在调用的变量cube1
是指向Cube
的指针。
要创建多维数据集,您应该:
Cube* cube1 = new Cube();
这会在堆内存中创建一个新的Cube实例,一旦你不再使用它就应该调用delete cube1
。
或:
Cube cube1;
这会在堆栈内存中创建一个新的Cube实例,一旦超出范围就会被销毁。
PS。你应该得到一本C ++教科书。
答案 1 :(得分:1)
您没有创建多维数据集的实例;你正在创建一个指向多维数据集的指针。
要创建指向多维数据集新实例的指针,您需要这样的代码:
Cube* cube1 = new Cube;