当前位置: 首页 > news >正文

[Oh My C++ Diary]一元作用域运算符::的使用

“::”是作用域运算符,是C++语言中优先级最高的运算符。

        它可以用于代码块的作用域,在函数内包括main函数哟!)如果有一个与全局变量重名的变量,可以用 ::a 的形式访问这个全局变量。(说明如果不用::,默认访问函数内的局部变量,因为局部变量在其作用域内具有较高的优先权,它将屏蔽全局变量

举个例子:
举几个例子:
1.
#include<iostream>
using namespace std;
int a = 99;  //全局变量a
int main()
{
    int a = 100;  //局部变量a和全局变量同名

    cout << a << endl;  //将打印局部变量a
    
	return 0;
}

输出结果为100

2.
#include<iostream>
using namespace std;
int a = 99;  //全局变量a
int main()
{
    int a = 100;  //局部变量a和全局变量同名

    cout << ::a << endl;  //将打印全局变量a
    
	return 0;
}

输出结果为99

3.
#include<iostream>
using namespace std;
int a = 99;  //全局变量a
int main()
{
    int a = 100;  //局部变量a和全局变量同名

    cout << a << ::a << endl;
    
	return 0;
}

输出结果为10099

总结:作用域运算符::可以用来解决局部变量与全局变量的重名问题,访问被屏蔽的全局变量。

相关文章:

  • [初学C语言]个人易错总结
  • [Oh My C++ Diary]善用三目运算符(a?b:c)
  • [Oh My C++ Diary]return 1和return 0的区别
  • [Oh My C++ Diary]Main函数参数argc,argv如何传入
  • [Oh My C++ Diary]怎样用cmd运行exe控制台程序
  • [Oh My C++ Diary]内联函数
  • [Oh My C++ Diary]\t \n \r的用法
  • [Oh My C++ Diary]结构体变量的声明
  • [Oh My C++ Diary]函数重载
  • [Oh My C++ Diary]带参数的main()函数
  • [Oh My C++ Diary]#ifndef / #define / #endif 使用详解
  • MySQL添加注释(comment)
  • MySQL复制表的结构、内容(数据)的方法
  • MySQL5.7永久统一编码/字符集为utf8(解决乱码)
  • MySQL5.7将编码由utf8改为utf8mb4(字符集)
  • [译]如何构建服务器端web组件,为何要构建?
  • 【5+】跨webview多页面 触发事件(二)
  • 【跃迁之路】【669天】程序员高效学习方法论探索系列(实验阶段426-2018.12.13)...
  • 2017-08-04 前端日报
  • Android框架之Volley
  • Cookie 在前端中的实践
  • ES6 ...操作符
  • HashMap剖析之内部结构
  • JavaScript DOM 10 - 滚动
  • JavaScript 基本功--面试宝典
  • mysql中InnoDB引擎中页的概念
  • Netty源码解析1-Buffer
  • npx命令介绍
  • PHP的类修饰符与访问修饰符
  • socket.io+express实现聊天室的思考(三)
  • tensorflow学习笔记3——MNIST应用篇
  • Xmanager 远程桌面 CentOS 7
  • 搞机器学习要哪些技能
  • 机器学习中为什么要做归一化normalization
  • 简单数学运算程序(不定期更新)
  • 如何打造100亿SDK累计覆盖量的大数据系统
  • 温故知新之javascript面向对象
  • 线性表及其算法(java实现)
  • 长三角G60科创走廊智能驾驶产业联盟揭牌成立,近80家企业助力智能驾驶行业发展 ...
  • 关于Android全面屏虚拟导航栏的适配总结
  • 好程序员web前端教程分享CSS不同元素margin的计算 ...
  • 资深实践篇 | 基于Kubernetes 1.61的Kubernetes Scheduler 调度详解 ...
  • ​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​
  • # 数论-逆元
  • ###51单片机学习(1)-----单片机烧录软件的使用,以及如何建立一个工程项目
  • #etcd#安装时出错
  • #NOIP 2014# day.1 T3 飞扬的小鸟 bird
  • #pragam once 和 #ifndef 预编译头
  • #基础#使用Jupyter进行Notebook的转换 .ipynb文件导出为.md文件
  • (1)STL算法之遍历容器
  • (javascript)再说document.body.scrollTop的使用问题
  • (JS基础)String 类型
  • (第二周)效能测试
  • (仿QQ聊天消息列表加载)wp7 listbox 列表项逐一加载的一种实现方式,以及加入渐显动画...
  • (附源码)基于ssm的模具配件账单管理系统 毕业设计 081848