用数组初始化一个类?

Tho*_*ine 3 c++ initialization class

使用STL的向量类,我可以使用列表(或数组)项来初始化向量:

std::vector<int> = { 1, 2, 3 };
Run Code Online (Sandbox Code Playgroud)

我可以将这个功能实现到我自己的类中吗?我正在编写自己的Vector类来实践数据结构,并希望:

MyVectorClass<int> = { 1, 2, 3 };
Run Code Online (Sandbox Code Playgroud)

MRB*_*MRB 5

是.使用std :: initializer_list.

在类中定义一个构造函数,它接受std::initializer_list<T>:

MyVectorClass(std::initializer_list<T> initializer)
{
    for(T& i : initializer)
    {
        // Do whatever you want with items
    }
}
Run Code Online (Sandbox Code Playgroud)