2016-11-29 93 views
-2

我試圖創建空的字符串向量的數組,但我不能管理初始化向量能值推到他們:初始化空載體的數組

vector <string> v[500]; 
// vector initializing code 
v[0].push_back("hello"); // should work now 

錯誤信息是:

'v' does not name a type 

我應該如何初始化v [0] .push_back()的工作?

+0

此刻什麼不適合你?您目前的問題描述不清楚。 **編輯:**您的代碼按原樣運行。演示:[這裏](https://ideone.com/fLXQ82)。 –

+0

'v [0] .push_back(「hello」);'不工作?如果是這樣,怎麼會這樣? – NathanOliver

+0

這應該工作。 'vector v [500]'應該初始化向量爲空。 – axalis

回答

1

正如在你的問題的所有評論中指出的,你的錯誤發生是因爲你從main函數中寫出你的代碼。每個C++程序都必須擁有它。

順便說一句,這裏有免費的好習慣(在評論中也可以找到)。

  • 使用std::array而不是C數組,如果你知道在編譯時的大小(我相信你這樣做)。
  • 避免using namespace std;,因爲it's bad
  • 請確保你做得很好,包括:#include <string>#include <vector>#include <array>如果使用的話。
  • 如果你是C++初學者,我建議C++ Primer,更新爲C++ 11。如果你是一個完整的初學者,Programming: Principles and Practice Using C++