2 c++ pointers class dynamic-memory-allocation
我一直在阅读一些书籍,当谈到使用指针/动态内存(或堆或w/e,他们称之为)的类/功能时,我开始感到困惑.
有没有人有一个简单的......就像他们可以展示的简单例子一样,因为我使用的书籍使用的是过于复杂的例子(大类或多个函数),这使得很难遵循.指针一直是我的弱点,但我理解BASIC指针,只是使用它们的类/函数有点令人困惑.
另外.....你什么时候使用它们是另一个问题.
堆栈分配:
char buffer[1000];
Run Code Online (Sandbox Code Playgroud)
这里1000必须是常数.buffer
超出范围时会自动释放内存.
堆分配:
int bufsz = 1000;
char* buffer = new char[bufsz];
//...
delete [] buffer;
Run Code Online (Sandbox Code Playgroud)
这里bufsz可以是变量.必须明确释放内存.
何时使用堆: