gpt4 book ai didi

c++ - 在 C++ 中,在创建对象时,隐式使用 new 吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:10:02 25 4
gpt4 key购买 nike

当我创建一个类的对象时,比如说,

class A {
public: A() {}
};

A a;

是否只调用了构造函数?还是隐式使用了new运算符?

就像我们必须做的那样 A* b = new A();

另外,ab 在内存中的存储位置?栈还是堆?

最佳答案

第一种情况,如果a不是全局变量,那么它会被放入栈中,而b会被放入堆中。

在第一种情况下,只调用了构造函数。 new 永远不会被调用,除非您像第二种情况那样明确地执行它。

关于c++ - 在 C++ 中,在创建对象时,隐式使用 new 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12042656/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com