簡體   English   中英

“沒有重載函數需要 21 個參數”

[英]"No overloaded function takes 21 arguments"

我在 MSVS 2015 中編寫了一個程序,但我需要在 MSVS 2013 中運行它。

我收到錯誤

“錯誤 1 ​​錯誤 C2661:'std::vector>::vector':沒有重載函數需要 21 個參數 \\vmwfil04\\students$\\1302273\\visual studio 2013\\projects\\dartsc++2013\\dartsc++2013\\gui.h 22 1"

這個問題影響了我在運行前創建的所有向量。

什么可能導致這種情況?

違規代碼:

vector<int> Double{ 0, 40, 2, 36, 8, 26, 12, 20, 30, 4, 34, 6, 38, 14, 32, 16, 22, 28, 18, 24, 10 };
vector<int> Normal{ 0, 20, 1, 18, 4, 13, 6, 10, 15, 2, 17, 3, 19, 7, 16, 8, 11, 14, 9, 12, 5 };
vector<int> Treble{ 0, 60, 3, 54, 12, 39, 18, 30, 45, 6, 39, 9, 57, 21, 48, 24, 33, 42, 27, 36, 15 };
vector<int> Bull { 0, 25, 50};

對這些列表初始化程序的支持是 VS 2015 中的新功能。VS 2013 中沒有。所以你不能這樣做。

您必須改用老式的 C++03 方法

我相信這是 Visual Studio 2013 中的一個錯誤,因為它確實支持列表初始值設定項(功能的2013 特定文檔)。 嘗試根據此答案將括號括在括號中。

例如vector<int> Double({ 0, 40, 2, 36, 8, 26, 12, 20, 30, 4, 34, 6, 38, 14, 32, 16, 22, 28, 18, 24, 10 });

暫無
暫無

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

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