2017-04-11 111 views
-4

我有一些問題了解矢量長度。緩存大小和向量長度之間的區別是什麼?矢量長度和內存帶寬之間的聯繫是什麼?什麼是矢量長度和矢量緩存大小?

+0

你的問題很不清楚。你可以請你重新翻譯一下,然後在你問的問題上添加好的細節?請參閱[如何提問](https://stackoverflow.com/help/how-to-ask) – WhiZTiM

+0

@WhiZTiM現在更改 –

+0

對不起。編輯也沒有太大的幫助......你是什麼意思的「矢量長度」?你在談論'std :: vector :: size()'嗎? ....「緩存大小」是什麼意思?哪個「緩存」? ...甚至你的硬盤驅動器有一個緩存.. – WhiZTiM

回答

0

向量具有大小和容量值。矢量的大小表示它包含多少個元素。容量表示可以包含多少個元素,而不必分配更多的內存。

您可以使用std::vector::reserve(int)強制向量將其容量增加到至少int傳遞給reserve的值。通常情況下,你不需要使用capacity,但是如果你知道你將分配多少元素,你應該保留這些內存,這樣在添加項目時向量不需要慢慢增加。