在C++中聲明數組大小的最佳方法是什麼?在C++中聲明數組大小的最佳方法
可能是動態增長的東西?
string lineArr[];
我知道沒有聲明數組大小,上面的代碼輸出一個錯誤,但有沒有辦法讓它動態?
在C++中聲明數組大小的最佳方法是什麼?在C++中聲明數組大小的最佳方法
可能是動態增長的東西?
string lineArr[];
我知道沒有聲明數組大小,上面的代碼輸出一個錯誤,但有沒有辦法讓它動態?
一個好方法聲明一個數組大小是使用一個常數:
const unsigned int ARRAY_CAPACITY = 64U;
unsigned int my_array[ARRAY_CAPACITY];
對於動態數組,使用std::vector
。
你可以做所有的內存管理自己,而不是:
unsigned int * p_array_start = new int[ARRAY_CAPACITY];
除了使用未指定的原始陣列使用std::vector
這樣的:
std::vector<string> lineArr;
的std::vector
成長內存分配必要的,如果您可以使用std::vector::push_back()
或std::vector::insert()
函數添加到它。
你的意思是[類似這樣的東西](https://godbolt.org/g/mMuQhl)? – skypjack