簡體   English   中英

對象向量的初始化程序列表

[英]Initializer list for vector of objects

我有以下示例代碼。 是否可以在不指定對象向量中指定“測試”的情況下初始化對象列表,還是最好的方法? 謝謝。

class Test {
public:
    Test(const std::initializer_list<int> list) : m_(list) {

    }

private:
    std::vector<int> m_;
};

int main(int argc, char **argv) {
    std::vector<Test> v = { Test({1, 2, 3}), Test({1, 2, 4}) };


}

以下作品:

std::vector<Test> v = {{1, 2, 3}, {1, 2, 4}};

但是我不確定這是否是您的意思。

以下是初始化vector<Test>所有有效方法。

 std::vector<Test> v1 = { Test({1, 2, 3}), Test({1, 2, 4}) };
 std::vector<Test> v2{Test({1, 2, 3}), Test({1, 2, 4}) };

 std::vector<Test> v3 = { {1, 2, 3}, {1, 2, 4}};
 std::vector<Test> v4{{1, 2, 3}, {1, 2, 4}};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM