我已经搜索过了,但我对这三个概念并不是很了解.我何时必须使用动态分配(在堆中)以及它的真正优势是什么?静态和堆栈有什么问题?我可以编写整个应用程序而无需在堆中分配变量吗?
我听说其他语言包含了"垃圾收集器",所以你不必担心内存.垃圾收集器做什么?
您可以自己操作内存,而不能使用此垃圾收集器吗?
有人告诉我这个声明:
int * asafe=new int;
Run Code Online (Sandbox Code Playgroud)
我有一个"指针指针".这是什么意思?它不同于:
asafe=new int;
Run Code Online (Sandbox Code Playgroud)
?
这是一个非常简单的问题,但我多年来都没有正确地完成c ++,所以我对此感到困惑.此外,在互联网上查找并不是最简单的事情(至少对我而言).
为什么不使用new关键字,它是如何工作的?
基本上,这里发生了什么?
CPlayer newPlayer = CPlayer(position, attacker);
Run Code Online (Sandbox Code Playgroud) 这有什么区别:
TestClass t;
Run Code Online (Sandbox Code Playgroud)
还有这个:
TestClass t = TestClass();
Run Code Online (Sandbox Code Playgroud)
我希望第二个可能会调用构造函数两次然后调用operator =,而是调用构造函数一次,就像第一次一样.