我知道,我可以像这样初始化数据。
int array[3] = { 1, 2, 3 };
甚至可以
int array[2][2] = { {1, 2}, {3, 4} };
我也可以使用 std::vector
进行操作。
std::vector<int> A = { 1, 2, 3 };
假设我想编写自己的类:
class my_class
{
std::vector< int > A;
public:
//pseudo code
my_class(*x) { store x in A;} //with x={ {1, 2}, {3, 4} }
// do something
};
是否有可能编写这样的构造函数?如果可能,该如何实现?那么这个语句 {{1, 2}, {3, 4}}
是在做什么呢?
我总是发现,虽然可以用这种方式初始化数据,但从未确切知道其作用。
std::initializer_list
作为参数的构造函数。 - Ron