美文网首页
C++中 ::的作用

C++中 ::的作用

作者: 放空飞翔 | 来源:发表于2019-11-05 10:49 被阅读0次

双冒号 :: 操作符被称为域操作符(scope operator),含义和用法如下:

1.在类外部声明成员函数。void Point::Area(){};

2.调用全局函数;表示引用成员函数变量及作用域,作用域成员运算符 例:System::Math::Sqrt() 相当于System.Math.Sqrt()。

3.调用类的静态方法: 如:CDisplay::display()。 把域看作是一个可视窗口全局域的对象在它被定义的整个文件里,一直到文件末尾都是可见的。在一个函数内被定义的对象是局域的(local scope), 它只在定义其的函数体内可见。每个类维持一个域,在这个域之外 ,它的成员是不可见的。类域操作符告诉编译器后面的标识符可在该类的范围内被找到。

1、 作用域符号 :: 的前面一般是类名称,后面一般是该类的成员名称,C++为例避免不同的类有名称相同的成员而采用作用域的方式进行区分

如:A,B表示两个类,在A,B中都有成员member。那么 A::member就表示类A中的成员member B::member就表示类B中的成员member

2、 全局作用域符号:当全局变量在局部函数中与其中某个变量重名,那么就可以用 :: 来区分如:

   char    zhou;    //全局变量

   void    sleep()

 {

    char    zhou;    //局部变量

    char(局部变量) = char(局部变量) *char(局部变量) ; 

   ::char(全局变量) =::char(全局变量) *char(局部变量);

}

3、 :: 是C++里的“作用域分解运算符”。

比如声明了一个类A,类A里声明了一个成员函数voidf(),但没有在类的声明里给出f的定义,那么在类外定义f时,就要写成voidA::f(),表示这个f()函数是类A的成员函数。例如

class CA { 
public: 
int ca_var; 
int add(int a, int b); 
int add(int a); 
};

//那么在实现这个函数时,必须这样书写: 
int CA::add(int a, int b) 
{ 
  return a + b; 
 } 

//另外,双冒号也常常用于在类变量内部作为当前类实例的元素进行表示,比如: 
int CA::add(int a) 
{ 
  return a + ::ca_var; 
 }

//表示当前类实例中的变量ca_var。

相关文章

  • C++中 ::的作用

    双冒号 :: 操作符被称为域操作符(scope operator),含义和用法如下: 1.在类外部声明成员函数。v...

  • C&C++类中嵌套枚举的使用方式

    C和C++中的类中嵌套枚举类型作用域不同,在C中可以直接引用,而C++中作用域发生了变化,则仅类内可见,引用时必须...

  • Java局部变量和作用域关系

    1、Java中作用范围是禁止嵌套的,而在C/C++中则是允许的 在Java中,在方法(函数)内定义的变量,其作用范...

  • C++中的 "override"

    简介 本章节主要介绍在C++中override关键字的主要作用。在阅读本章节前,需要先理解C++中的虚函数. 例程...

  • _T()在c++中的作用

    问题:经常我们会在程序中看到字符串直接被这样使用:_T("完成"),好端端的字符串为什么用_T()处理呢?解答:字...

  • C++ - this 指针

    从 C++ 程序到 C 程序的翻译 作用就是指向成员函数所作用的对象 this 指针作用 在类的非静态成员函数中,...

  • C++中反斜杠作用“\”

    ①转义字符;如:\n表示回车+换行等。 ②续行符; 在普通代码行后面加不加都一样(VC是自动判断续行的),但是在宏...

  • C++中的成员变量和成员函数

    C++中的类有两个成分: (1)成员变量 成员变量按照作用域分为静态成员变量和非静态成员变量,C++中成员变量的默...

  • C++IO的clear()函数

    参考C++ Primer中文版279页8.1.2 C++的IO对象中存在一个clear()成员函数,作用是将流的条...

  • C++ explicit关键字

    C++ explicit用法 C++中的explicit关键字只能用于修饰只有一个参数的类构造函数。 它的作用是表...

网友评论

      本文标题:C++中 ::的作用

      本文链接:https://www.haomeiwen.com/subject/mcdsbctx.html