为什么在这种情况下没有调用我的类的构造函数?
Why is the constructor for my class not being called in this case?
我正在创建一个新的类实例,像这样:
Cube* cube1;
在Cube
构造函数中有代码,但它没有被运行!这是常事吗?
您实际上没有创建任何实例。
你调用cube1
的变量是指向Cube
的指针。
要创建一个Cube,您需要:
Cube* cube1 = new Cube();
这将在堆内存中创建一个新的Cube实例,您应该在不再使用它时调用delete cube1
。
或:
Cube cube1;
这将在堆栈内存中创建一个Cube的新实例,一旦超出作用域,它将被销毁。
p。
您不是在创建一个Cube实例;你正在创建一个指向立方体的指针。
要创建一个指向Cube新实例的指针,您需要这样的代码: Cube* cube1 = new Cube;
相关文章:
- 模板构造函数中的C++模板参数
- 为什么除非添加括号,否则构造函数上的模板替换会失败?
- 获取从C++中同一类中的构造函数调用的方法返回的值
- C++中构造函数中的枚举
- 自动重复 extern "C"函数中的类构造函数采用的相同参数
- 具有所表示类的相同构造函数签名的代理类模板
- 通过构造函数创建的所有对象都具有相同的向量
- 构造函数中的 QQuickItem 父项 null
- 填充上编译器生成的复制构造函数之间的不一致
- 尝试在构造函数中的"glm::cross"处初始化我的类段错误
- 如何在我使用过的Arduino库之一中固定构造函数中的转换错误
- 我允许用memcpy(*this)修改构造函数中的所有类成员
- 为什么当我添加一个不同的对象(复制构造函数中的参数)时调用复制构造函数?
- 在构造函数以外的任何其他位置访问相机时,我的相机指针返回 null
- 我如何构建具有构造函数参数的对象的向量
- 链表堆栈类的复制构造函数:我的正在向后复制
- 复制构造函数 - 我是否正确设置了我的 std::字符串
- 我应该如何指定指针成员的构造函数参数的常量
- 为什么在这种情况下没有调用复制构造函数-我的推理正确吗?
- 为什么我不能在其他成员函数中使用构造函数中的变量"i"?C++