我是一個非常基本的問題的結構。我想在C++中動態創建一個字符串數組。創建動態數組的字符串C++
我該怎麼做?
這是我的嘗試:
#include <iostream>
#include <string>
int main(){
unsigned int wordsCollection = 6;
unsigned int length = 6;
std::string *collection = new std::string[wordsCollection];
for(unsigned int i = 0; i < wordsCollection; ++i){
std::cin>>wordsCollection[i];
}
return 0;
}
但它給下面的錯誤
error C2109: subscript requires array or pointer type
有什麼錯誤?
而且,如果我從用戶獲得輸入號碼,從std::cin
我可以創建一個靜態大小的數組?
今後就請選擇您的代碼塊,並使用'{}'按鈕;這將使您的代碼在問題中正確顯示。 –
您鍵入'wordsCollection [i]'而不是'collection [i]'。您不能使用*動態獲得的大小(例如通過'std :: cin')來創建一個靜態數組。此外,該陣列泄漏,因爲你永遠不會釋放它。 –