C++中双冒号::的作用浅析

Posted by JackPeng on October 26, 2018

在C++中经常使用双冒号::,很多朋友不知道是什么意思,这篇文章主要介绍了C++中双冒号::的作用,需要的朋友可以参考下

C++中经常使用的作用符::,作用如下:

• 作用域限定符。在类体内申明函数,并在类体外定义函数时,必须在定义函数时加上类名和作用域限定符。

lass MyClass{ 
 public: 
  int num; 
  int fun();//类体内申明函数 
}; 
//类体外定义函数 
int MyClass::fun(){ 
 return 1; 
}

• 静态数据和静态成员函数成员既可以通过对象名引用,也可以通过类名加::来引用。例如,MyClass::a。静态成员函数的目的就是为了操作静态数据成员,静态成员函数引用不了非静态的数据成员。

class MyClass{ 
 private static int a; 
}; 
//类体外引用静态成员变量 
MyClass::a;

• 引用在类中定义的typedef新类型

class MyClass{ 
 public typedef int INT; //此处typedef的作用:定义类型别名 
} 
MyClass ::INT b;//类体外声明一个变量

• 全局作用域符号:当全局变量在局部函数中与其中某个变量重名,可用::来区分。

int a;//全局变量 
void fun(){ 
 int a; //局部变量 
 a(局部变量) = a(局部变量)*a(局部变量) ; 
 ::a(全局变量) =::a(全局变量) *a(局部变量); 
}

总结

以上所述是小编给大家介绍的C++中双冒号::的作用浅析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!