我一直在阅读一些书籍,当涉及到使用指针/动态内存(或它们称为的堆或w / e)的类/函数时,我开始感到困惑。
是否有人能显示一个简单的......这样的简单示例,因为我正在使用的书籍使用的示例过于复杂(大型类或多个函数),因此很难遵循。无论如何,指针一直是我的弱点,但我了解BASIC指针,只是使用它们的类/函数有点令人困惑。
还有.....什么时候使用它们是另一个问题。
最佳答案
堆栈分配:
char buffer[1000];
这里1000必须是一个常数。当
buffer
超出范围时,内存将自动释放。堆分配:
int bufsz = 1000;
char* buffer = new char[bufsz];
//...
delete [] buffer;
在这里,bufsz可以是一个变量。必须显式释放内存。
何时使用堆:
关于c++ - 动态功能存储器? C++,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4761721/