0
一段時間以來,我用C++ 11統一初始化語法{}
來初始化我所有的變量。std :: initializer_list <T>作爲構造函數參數和統一初始化語法
現在我想初始化QVector<int>
具有特定大小,所以我需要調用QVector(int size)
構造(DOC here)。
然而,QVector
還具有以下的構造: QVector(std::initializer_list<T> args)
所以,當我初始化我的變量是這樣的:QVector<int> foo{ 100 };
,它不具有大小的元素初始化我QVector,而是調用其它構造,其構造一個QVector 用的值一個元件3210。
我怎樣才能調用QVector(int size)
構造函數但仍然使用統一初始化語法?
你應該看看可用的類型的構造函數。我只是檢查和'內聯QVector(std :: initializer_list args);'似乎是支持語法的唯一構造函數。現在試着瞭解它的功能。什麼是'std :: initializer_list '?它看起來是通過一些T型值的方式? –
AlexanderVX