C++ 单冒号: 和双冒号:: 的作用
刚开始看C++入门经典这本书,可能是C语言不过关吧,很多运算符跟关键字都理解不了,鄙人百度了好多文章,觉得以下是总结的比较好的
原文地址:http://www.360doc.com/content/13/0605/11/3373961_290615318.shtml
C++单冒号与双冒号的作用1.冒号(:)用法 (1)表示机构内位域的定义(即该变量占几个bit空间) typedef struct _XXX{ unsigned char a:4; unsigned char c; } ; XXX (2)构造函数后面的冒号起分割作用,是类给成员变量赋值的方法,初始化列表,更适用于成员变量的常量const型。 struct _XXX{ _XXX() : y(0xc0) {} }; (3) public:和private:后面的冒号,表示后面定义的所有成员都是公有或私有的,直到下一个"public:”或"private:”出现为止。"private:"为默认处理。 (4)类名冒号后面的是用来定义类的继承。 class 派生类名 : 继承方式 基类名 { 派生类的成员 }; 继承方式:public、private和protected,默认处理是public。 2.双冒号(::)用法 (1)表示“域操作符” 例:声明了一个类A,类A里声明了一个成员函数void f(),但没有在类的声明里给出f的定义,那么在类外定义f时, 就要写成void A::f(),表示这个f()函数是类A的成员函数。 (2)直接用在全局函数前,表示是全局函数 例:在VC里,你可以在调用API 函数里,在API函数名前加:: (3)表示引用成员函数及变量,作用域成员运算符 例:System::Math::Sqrt() 相当于System.Math.Sqrt() 一.单冒号(:) 在这个位域定义中,a占第一字节的4位,后4位填0表示不使用,b从第二字节开始,占用4位,c占用4位。 }; 从以上分析可以看出,位域在本质上就是一种结构类型, 不过其成员是按二进位分配的。 3、条件语句(? :) int main () #include <iostream> int main () int main () std::cin >> a; std::cout << "hello, world!" << std::endl; return 0; 1)using std::; #include <iostream> int main () cin >> a; std::cout << "hello, world!" << endl; //注意cout没用用using return 0; 2)using namespace ; int main () cin >> a; cout << "hello, world!" << endl; return 0; 另: C++作用域运算符::主要有2种应用方式。 其一,声明一个类A,类A里声明了一个成员函数void f(),但没有在类的声明里给出f的定义,那么在类外定义f时,就要写成void A::f(),表示这个f()函数是类A的成员函数。 其二,作用域可以 eg: //作用域 #include <iostream> using namespace std;int avar=10; //全局变量avarint main() { int avar=20; //局部变量avar cout<<"avar is: "<<avar<<endl; //访问局部变量 avar=25; //1 //修改局部变量 cout<<"avar is: "<<avar<<endl;cout<<"avar is: "<<::avar<<endl; //访问全局变量 ::avar=30; //2 //修改全局变量 cout<<"avar is: "<<::avar<<endl;return 0; } 输出结果依次为:20,25,10,30 |
C++ 单冒号: 和双冒号:: 的作用相关推荐
- C++单冒号与双冒号的作用
C++单冒号与双冒号的作用 1.冒号(:)用法 (1)表示机构内位域的定义(即该变量占几个bit空间) typedef struct _XXX{ unsigned char a:4; unsigned ...
- [css] ::before和:after中单冒号和双冒号的区别是什么,这两个伪元素有什么作用?
[css] ::before和:after中单冒号和双冒号的区别是什么,这两个伪元素有什么作用? 区别:伪元素在css1中已经存在当时用单冒号,css3时做了修订用双冒号 ::before ::aft ...
- html语言中的双冒号,css单冒号和双冒号用法和区别
最近突然被别人问起css单冒号和双冒号有什么区别,答曰:"不知道". 虽然还在填坑中,但作为一个跨过了初级的FEer,感觉着实汗颜,刚好今天下午在搜别的问题的时候,突然看到一个对比 ...
- C++中的单冒号与双冒号
1.单冒号(:)用法 (1)表示机构内位域的定义(即该变量占几个bit空间) typedef struct _XXX{ unsigned char a:4; unsigned char c; } ; ...
- C++ 单冒号与双冒号用法
1.冒号(:)用法 (1)表示机构内位域的定义(即该变量占几个bit空间) typedef struct _XXX{ unsigned char a:4; unsigned char c; } ; X ...
- numpy数组(无冒号,单冒号,双冒号)的含义
import numpy >>> a = numpy.array([[1,2,3,4,5],[6,7,8,9,10],[1,2,3,4,5],[6,7,8,9,10]]) >& ...
- 冒号 : 与双冒号 :: 的C++用法
1.冒号(:)用法 (1)类名冒号:定义类的继承. (2)构造函数后面的冒号:分割作用,类给成员变量赋值. 初始化列表,更适用于成员变量的常量const型. struct _XXX{ _XXX() : ...
- C++ 中 冒号:和双冒号::的简介
冒号(:)的用法 (1)表示机构内位域的定义(即该变量占几个bit空间) typedef struct _XXX{unsigned char a:4;unsigned char c;} ; XXX ( ...
- 关于冒号和双冒号用法
1.冒号(:)用法 (1)表示机构内位域的定义(即该变量占几个bit空间) typedef struct _XXX{ unsigned char a:4; unsigned char c; } ; X ...
最新文章
- SAP物料移动过账之差异科目
- 线上性能问题初步排查方法
- 20个开源项目托管站点推荐
- spring boot 单元测试_spring-boot-plus1.2.0-RELEASE发布-快速打包-极速部署-在线演示
- 串口.Qt532测试(异步)
- Spring中三种编程式事务的使用
- DSP实验二c语言程序,实验1.2:编写一个以C语言为基础的DSP程序
- 微博视频下载去水印 视频消重
- 用 JavaScript 实现时间轴与动画 - 前端组件化
- 关闭iTunes iPhone自动备份(Windows+Mac)及删除过期备份
- debian10上安装samba服务器
- BERT 中wordPiece的原理
- 三十而立~2019年终总结
- Mac终端输出重定向到剪切板
- HTML中表格写法,在HTML代码里面表格的写法以及表格的特性
- CL210集成身份管理--管理身份服务令牌
- 【服务器】XShell 使用汇总
- CHIL-ORACLE-循环 语法
- 【深度学习】超越ConvNeXt!Transformer 风格的卷积网络视觉基线模型Conv2Former
- 利用numpy对矩阵进行归一化处理的方法