C++作用域运算符(::)
来源:互联网 发布:mysql启动报1067错误 编辑:程序博客网 时间:2024/05/18 16:16
::是C++里的“作用域运算符”。
比如声明了一个类A,类A里声明了一个成员函数void f(),但没有在类的声明里给出f的定义,那么在类外定义f时,就要写成void A::f(),表示这个f()函数是类A的成员函数。
:: 一般还有一种用法,就是直接用在全局函数前,表示是全局函数。当类的成员函数跟类外的一个全局函数同名时,在类内定义的时候,打此函数名默认 调用的是本身的成员函数;如果要调用同名的全局函数时,就必须打上::以示区别。比如在VC里,你可以在调用API函数时,在API函数名前加::。
如果有两个同名变量,一个是全局的,一个是局部的,那么局部的变量在其作用域拥有较高的优先权,全局变量则被屏蔽。
那如果我希望在局部变量的作用域里使用全局变量怎么办,这时就要用到::作用域运算符了。比如:
1 #include<iostream>
2
3 usingnamespace std;
4
5 int x;
6
7 int main()
8
9 {
10
11 int x;
12
13 x=50;
14
15 ::x=100;
16
17 cout<<"局部变量x="<<x<<endl;
18
19 cout<<"全局变量x="<<::x<<endl;
20
21 return0;
22
23 }
结果:
- C++"::"作用域运算符
- C/C++作用域运算符::
- 作用域运算符
- ::作用域运算符
- 作用域运算符
- C++作用域运算符(::)
- C++ 作用域运算符(::)
- c语言预处理运算符# #作用
- 作用域和作用域运算符“::"
- 8 作用域运算符
- 作用域运算符::用法
- [黑马IOS自学第二篇]C基础(常量,变量,标示符,变量作用域,scanf函数,运算符)
- C++对C语言的非面向对象特性扩充(3)--作用域运算符"::"&强制类型转换&运算符new和delete&引用
- 作用域运算符(::)单独使用的意义
- C语言学习笔记——数据的类型、存储、作用域,运算符,表达式
- c语言中逗号运算符的作用
- C语言中,sizeof运算符的作用
- c语言中逗号运算符的作用
- ASP.NET 2.0实现类似QQ邮箱中‘HTML方式查看’功能查看Office文件
- ogre 开发范例大全(3)
- ado.net中一些常见数据库连接知识汇总
- 黑马程序员 javascript DOM 的编写
- 应用层与驱动层同步事件处理方法
- C++作用域运算符(::)
- 【转】zend framework和smarty的区别
- 袁师兄数论模板
- 字节补丁生成工具
- inotifywait实现目录监控
- Java的反射编程
- 不能被继承的类[C/C++/C#]
- python使用easy_install安装支持excel2007操作的openpyxl
- x264源码分析