我是自学c ++,我得到了指针的工作方式.但我正在使用的文档是非常文字的,并且示例并没有真正说明为什么或何时使用指针.一些现实世界的例子可以帮助我保留知识.
当您希望对象存在的时间长于当前堆栈时,可以使用指针.您还可以使用它们来避免将对象复制到容器中.
// TODO: Remember to call DeleteObjects() when you're done here!!
std::vector<MyObject*> Objects;
void Test()
{
MyObject *const pObject = new MyObject();
Objects.push_back(pObject);
}
void DeleteObjects()
{
std::vector<MyObject*>::iterator it = Objects.begin(), itEnd = Objects.end();
for (; it != itEnd; ++it)
{
delete *it;
}
Objects.clear();
}
Run Code Online (Sandbox Code Playgroud)