当我创建一个类的对象时,比方说,
class A {
public: A() {}
};
A a;
Run Code Online (Sandbox Code Playgroud)
只是构造函数被调用?或new隐含使用运算符?
就像我们必须做的那样 A* b = new A();
此外,将在哪里存储a并b存储在内存中?堆栈还是堆?
没有new不隐式调用.new返回指向所创建对象类型的指针,而构造函数调用没有返回类型.创建的对象new将存在于堆上.New将分配内存,然后调用构造函数.在表单中创建的对象A a将存在于堆栈中(除非它们是全局变量).