(1):: 叫作用域区分符,指明一个函数属于哪个类或一个数据属于哪个类。
class Box { public: double length; // 长度 double breadth; // 宽度 double height; // 高度 double getVolume(void) { return length * breadth * height; } };
您也可以在类的外部使用范围解析运算符 :: 定义该函数,如下所示:
class Box { public: double length; // 长度 double breadth; // 宽度 double height; // 高度 double getVolume(void);// 返回体积 }; double Box::getVolume(void) { return length * breadth * height; }
(2):: 可以不跟类名,表示全局数据或全局函数(即非成员函数)。
int month;//全局变量
int day; int year; void Set(int m,int d,int y) { ::year=y; //给全局变量赋值,此处可省略 ::day=d; ::month=m; } Class Tdate { public: void Set(int m,int d,int y) //成员函数 { ::Set(m,d,y); //非成员函数 } private: int month; int day; int year; }