c – 如何创建用列表初始化的构造函数?
发布时间:2020-12-16 10:09:06 所属栏目:百科 来源:网络整理
导读:如何使用包含n个元素的列表初始化构造函数? X x = {4,5,6,...}; 解决方法 对于包含n个元素的列表,您需要使用std :: initializer_list. Initializer_list objects are automatically constructed as if an array of elements of type T was allocated,with e
如何使用包含n个元素的列表初始化构造函数?
X x = {4,5,6,...}; 解决方法
对于包含n个元素的列表,您需要使用std :: initializer_list.
举个例子: #include <iostream> #include <initializer_list> #include <vector> template<class T> class X { long unsigned int size; std::vector<T> _elem; public: X(std::initializer_list<T> l): size{l.size()} { for(auto x: l) _elem.push_back(x); } void print() { for(auto x: _elem) std::cout << x << " "; } }; int main(int argc,char **argv) { X<int> x = {4,10,8,6}; x.print(); return 0; } 有关std :: initializer_list的更多信息: (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |