c++成员类型

c++ member types

本文关键字:类型 成员类 成员 c++      更新时间:2023-10-16

这个问题是由我刚才问的c++正则表达式问题引起的。

在在线cpp引用中,例如match_results,"成员类型"部分中的value_type是什么意思?这是定义类的标准方式吗?如何阅读整个"成员类型"部分?

成员类型只是用于使用和/或以某种方式与类本身相关的typedef(有时是完整的类)。

关于一般的成员类型,我们以std::vector为例:

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

这是一个类型为T的模板(和一个分配器,无关紧要)。

现在,std::vector包含一个成员类型std::vector::value_type,它总是被定义为与T相同的类型。例如,对于vector<int>, std::vector::value_typeint相同,您可以使用它来定义新的变量等。
类似地,还有pointerreference以及其他一些东西可以解析为int*int&

然后是size_type,它定义了一个适合保存所有可能的向量长度值的变量…因为如。它在X86和X64上通常是不同的(而且,对于某些类,它可能取决于实现,等等),有这样的东西是有用的。