如何初始化对象指针列表
how to initialize list of object pointers
我想建立一个指向对象的指针链表,在定义时初始化它,而不是多次调用push_back()
,这将是愚蠢的。
class Myclass {
int x;
string name;
bool test;
//whetever
public:
Myclass();
void inc_x();
~Myclass();
};
主:Myclass c1,c2,c3,c4;
list<Myclass*> mylist;
/*
list<Myclass*> mylist={&c1,&c2}; compiler returns initialized by constructor not by {...}
*/
我尝试使用list<Myclass*>::list<Myclass*>
作为类构造函数的形式,但编译器返回它需要模板语法。
是什么意思?
如何初始化这类列表?
在这种情况下,我如何定义构造函数而不是使用默认构造函数?
std::initializer_list
和相关的构造函数是c++ 11的特性,所以必须在编译器中启用。请查看实现所需的文档,了解如何做到这一点。在Clang或GCC中,您只需在命令行调用中传递-std=c++11
。
相关文章:
- 为什么这个 std::queue/指向结构的指针列表直到 List.Size() == 0 才释放内存?
- 什么更好?返回对象指针列表?或返回指向对象列表的指针?
- 如何将共享指针列表传递到pybind11中的c++对象
- C++:如何初始化包含具有给定键的指针列表的映射
- 使用继承的指针列表复制构造函数或重载运算符=
- 我应该如何在工厂类中存储弱指针列表?
- Qt单元测试:指针列表上的QCOMPARE函数
- 如何正确释放要配对的指针列表?
- 如何在 c++ 上对指针列表进行排序
- 从地图复制到指针列表
- 我对C 中共享指针列表进行排序的功能未完成类型
- const_iterator引用的指针列表
- 在 c++ 中生成字符串到 std::指针列表的映射
- 访问链表中的结构(带有指向其子实现的指针列表的树)
- 有没有办法使用基于范围的迭代器来迭代对指针列表值的引用?
- 使用迭代器指针 (C++) 从对象指针列表中删除元素
- 无法列出定制类型的指针列表
- 创建指针列表的正确范例是什么
- 如何将指向指针列表的私有指针作为 const 返回
- C++填充指向指针**列表的指针,该列表指向指针地址