我是C++的初學者,對這些語句有疑問。這些C++語句的含義是什麼typedef向量<double> :: size_type
vector<double> vec1;
typedef vector<double>::size_type vec_size
vec_size size = vec1.size()
從問題, C++: "vector<int>::size_type variable" - what is the point of declaring in this way?,據我所知,size::type
擁有最大的可能向量的大小。我很困惑什麼類型是size::type
- 它是一個函數,變量等?使用typedefvec_size
相當於vector<double>::size_type
。所以第三行變成
vector<double>::size_type size = vec1.size()
這對我來說很混亂。什麼是型號變量size
?
如果有人用簡體中文進行評論,這將會非常有幫助。
'size_type'是一個無符號整數類型。提供該typedef的全部意義在於,您不必知道實現使用的確切類型。這就是說,它很可能是'size_t'。 – Praetorian
增加了Praetorian所說的Containers :: size_type。所有容器都有與size_t相關的size_type。它不只是矢量。它在處理算法和排序時很方便。看看有效的STL,相當不錯的書 – TimLayne