我必须通过调用AnotherClass::objectCollections()
来实现Vector<MyObject*>
。所以这里的返回类型应该是Vector<MyObject*>
。此外,我必须从可能返回MyObject*
的另一个函数返回每个MyObject*
。以便它可以填充矢量。我是C++核心编程的新手。我想知道更安全的方法来实现这一点而不会崩溃,即使动态创建的向量数组数量很大,如果您提供了足够的示例或链接所需的返回类型,它将非常有用。创建指针对象的向量
0
A
回答
0
好的,这里是一个示例。我用几个指针来填充矢量。然后我一个接一个地删除它们,最后清除这个向量。如果我在Vector.clear()之前手动调用每个元素上的delete操作符,则会泄漏内存。
std::vector<int*> Vector;
for (int i = 0; i < 10; i++)
Vector.push_back(new int(i));
std::vector<int*>::const_iterator It;
for (It = Vector.begin(); It != Vector.end(); It++)
{
int* n = *It;
if (n) delete n;
}
Vector.clear();
+0
谢谢。从这我可以进一步在我的代码。 – 2012-04-25 15:45:35
相关问题
- 1. 创建一个指向抽象对象的指针向量
- 2. C++矢量对象与指向对象的指针的向量
- 3. 创建对象的指针
- 4. 删除指针向量中的指针指向的对象
- 5. 创建指向矢量的指针,类
- 6. 创建指向没有新关键字的对象的指针
- 7. 创建指向类对象的指针数组
- 8. 如何创建一个指向对象的指针
- 9. 使用矢量指针指向对象的指针C++
- 10. 搜索对象指针的向量
- 11. 创建指针的C++向量
- 12. 如何在C++中创建对象时将对象指针推向矢量?
- 13. 试图创建一个指向对象内的先前对象的指针
- 14. 向量含有矢量对象指针的最终指向同一对象
- 15. 无效指针指向对象指针
- 16. 设置指向对象的指针,让对象指向对方
- 17. 指向const对象的指针自动转换为指向对象的指针
- 18. 对象指针赋值指针向量的元素
- 19. 将对象的指针直接存储在指针向量中?
- 20. C++,向量,指针和对象混淆
- 21. 创建指针向量的boost ::线程指针
- 22. 创建对象的指针列表
- 23. 指向对象的指针指向C++对象范围之外
- 24. 指向对象指针的未声明标识符向量
- 25. 创建指向函数的指针向量
- 26. 矢量的指针,指向矢量对象中的对象。怎么做?
- 27. 序列化包含指针向量的对象向量
- 28. 管理指针向量和对象向量的模板类
- 29. 如何创建指针的向量为向量
- 30. 创建对象指针数组C++
我强烈建议在你的矢量中使用智能指针,但只有当你绝对需要指针在那里。 – chris 2012-04-22 15:03:22
如果你提供一个例子,它会很好。谢谢.. – 2012-04-22 15:05:49
看看'std :: unique_ptr','std :: shared_ptr'和'std :: weak_ptr',或者如果你没有C++ 11,boost的智能指针可能会成为下一个最佳选择。 – chris 2012-04-22 15:09:40