C++中string : : size_ type 中双冒号什么意思?整句又是什么意思

作者&投稿:豆卢从 (若有异议请与网页底部的电邮联系)
c++中string::size_type的具体说明~

string类是c++中的一个标准类,而“::”在c++中叫做成员操作符 意思是一个类的后面跟上其一个成员函数后可以对该函数进行调用,string::size-type字面上意思就是调用标准类中size-type这个成员函数

string::size_type
string是一个名字空间;
size_type是在这个名字空间里的一个typedef。如果能看到源码,你应该能看到类似的定义:
typedef unsigned int size_type;


所以你可以用string:size_type 来定义变量。

是C++里的,是“域操作符”。
比如声明了一个类A,类A里声明了一个成员函数void f(),
但没有在类的声明里给出f的定义,那么在类外定义f时,
就要写成void A::f(),表示这个f()函数是类A的成员函数。

::一般还有一种用法,就是直接用在全局函数前,表示是全局函数。
比如在VC里,你可以在调用API 函数里,在API函数名前加::


::作用域操作符,表示size_type是string类的成员,也就是说,是string类定义的数据类型。 而为什么要定义这种数据类型呢?因为string类的成员成员函数size(一种返回string类的长度的操作)要求返回这种数据类型。实则上相当于unsigned型,只是它的值足够大,可以存放string类的长度

这符号有 从属的意思 意思就是string中有个size_type的成员 ,类似于数学中的属于
还有个啥意思不太记得哒。。。

string类中的 size_ type;::是命名空间的概念