2016-11-30 82 views
-1

在C++中聲明數組大小的最佳方法是什麼?在C++中聲明數組大小的最佳方法

可能是動態增長的東西?

string lineArr[]; 

我知道沒有聲明數組大小,上面的代碼輸出一個錯誤,但有沒有辦法讓它動態?

+0

你的意思是[類似這樣的東西](https://godbolt.org/g/mMuQhl)? – skypjack

回答

7

是的。使用std::vector,永不回頭。

+2

看起來像有人投票回來;) –

1

一個好方法聲明一個數組大小是使用一個常數:

const unsigned int ARRAY_CAPACITY = 64U; 
unsigned int my_array[ARRAY_CAPACITY]; 

對於動態數組,使用std::vector

你可以做所有的內存管理自己,而不是:

unsigned int * p_array_start = new int[ARRAY_CAPACITY]; 
1

除了使用未指定的原始陣列使用std::vector這樣的:

std::vector<string> lineArr; 

std::vector成長內存分配必要的,如果您可以使用std::vector::push_back()std::vector::insert()函數添加到它。

相關問題