news 2026/9/25 3:34:12

C++两个冒号不同用法的含义区别

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C++两个冒号不同用法的含义区别

1. 单冒号

1、类名冒号后面用来定义类的继承。

classCAboutDlg:publicCDialog{public:CAboutDlg();enum{IDD=IDD_ABOUTBOX};protected:virtualvoidDoDataExchange(CDataExchange*pDX);protected:DECLARE_MESSAGE_MAP()};

2、构造函数后面加冒号用来初始化成员列表。

3、表示结构内的位域(该变量占几个bit空间)。

typedefstruct_XXX{unsignedchara:4;//a占4个bit空间unsignedcharc;};XXX

2. 双冒号

1、局部变量使用同名的全局变量。

#include<iostream>usingnamespacestd;intintValue=8;intmain(){intintValue=9;::intValue++;cout<<::intValue<<endl;cout<<intValue<<endl;while(1);}

2、调用API函数。

3、域操作符。

在类B声明一个函数void fun(),但是没给出具体类的定义,在类外定义是要写成void B::fun():

classB{public:voidfun();}voidB::fun(){...}

4、表示引用成员函数及变量,作用域成员运算符:System::Math::Sqrt()相当于System.Math.Sqrt()。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!