2016-10-04 92 views
0

這個問題源於有關c++ regex我剛纔問的問題。C++成員類型

在網上CPP引用例如match_results,什麼是在「會員類型」一節手段value_type?這是一些定義類的標準方式嗎?如何閱讀這整個「會員類型」部分?

回答

1

會員類型只是typedef S(或有時全類),它們使用和/或主題相關的類本身是有用的。

至於你問一般的成員類型,讓我們std::vector爲例:

template < class T, class Alloc = allocator<T> > class vector; 

這是一個與T類型的模板(和分配,無所謂)。

現在,std::vector包含一個成員類型std::vector::value_type,它總是被定義爲與T相同的類型。例如,對於vector<int>std::vector::value_type是一樣的int,你可以用它來定義新的變量等
類似,也有pointerreference和其他一些東西決心int*int&

然後,有size_type,它定義適合於容納所有可能的向量長度的值的變量......因爲例如。它在X86和X64上通常是不同的(對於某些類,它可以取決於實現,...),有這樣的東西是有用的。

等等...