簡體   English   中英

矢量<int> :: C++ 中的大小類型

[英]vector<int>::size_type in C++

這個 C++ 語句是什么意思?

vector<int>::size_type x;

而且,這里的作用域運算符::什么用? 換句話說,我們如何用英語閱讀這個聲明?

例如,對於X::x(){...} ,我們說x()class Xmember function

size_typevector<int>類型(靜態)成員類型 通常,它是std::size_ttypedef ,它本身通常是unsigned intunsigned long longtypedef

我將其讀作“將 x 聲明為適合保存向量大小的類型的變量”。 向量為其長度定義了自己的類型,如果可能的話,使用它總是最干凈的,而不是“猜測”並直接使用intunsigned intlongunsigned longsize_t等,否則你需要這樣做。

矢量是一個模板

所以用int模板化的vector類型有一個名為size_type的成員typedef x被定義為該類型的變量。

不同的實現使用不同的類型來表示大小,因此我們不能直接編寫適當的類型並保持與實現無關。 因此,使用庫定義的 size_type 來表示容器大小是一種很好的編程習慣。

- Andrew Koenig 和 Barbara E. Moo 的加速 C++

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM