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

::

::是运算符中等级最高的,它分为三种:全局作用域符,类作用域符,命名空间作用域符。他们都是左关联(left-associativity)。他们的作用都是为了更明确的调用你

 

一.

全局作用

全局作用域符号:当全局变量在局部函数中与其中某个变量重名,那么就可以用::来区分如: 
  char zhou; // 全局变量
  void sleep() 
  { 
  char zhou; // 局部变量 
  zhou(局部变量) = zhou(局部变量) *zhou(局部变量) ; 
  ::zhou(全局变量) =::zhou(全局变量) *zhou(局部变量); 
  }
 
二.

类作用

作用域符号::的前面一般是类名称,后面一般是该类的成员名称,C++为了避免不同的类有名称相同的成员而采用作用域的方式进行区分
  如:A,B表示两个类,在A,B中都有成员member。那么
  A::member就表示类A中的成员member
  B::member就表示类B中的成员member
三.命名空间
"::"是作用域 限定符或者称作用域运算符或者作用域操作符(scope operator).例如命名空间
"::"作用:namespace::name
四.举例
 
 
/*
全局作用域符
*/
#include<iostream>
intsum=5050;
intmain()
{
  intarr[3],i;
  cout<<"input3num:" <<endl;
  for(i=0;i<3;i++)
  cin>>arr[i];
  intsum=0;
  for(i=0;i<3;i++)
  sum+=arr[i];
  for(i=0;i<3;i++)
  cout<<setw(4)<<arr[i] <<endl;
  cout<<"局部sum="<<sum <<endl;
  ::sum+=sum;
  cout<<"全局sum=";
  cout<<::sum<<endl;//5056
  system("pause");
  return0;//在这里::是一元作用符
}
/*
类作用域符
*/
#include<iostream>
classTime
{
  public:
  voidsetTime();
  voidshowTime();
  private:
  inthour;
  intminute;
  intsec;
};
voidTime::setTime()/*类外声明部分*/
{
  std::cin>>hour;/*std命名空间的作用域*/
  std::cin>>minute;/*std命名空间的作用域*/
  std::cin>>sec;/*std命名空间的作用域*/
}
/*
类外声明
*/
voidTime::showTime()
{
  std::cout<<hour<<":"<<minute<<":"<<sec<<std::endl;/*std命名空间的作用域*/
}
intmain()
{
  Timetime_1;
  time_1.setTime();
  time_1.showTime();
  system("pause");
  return0;
}

 

 
 
 
 
 
 
 
 
 
 
 
 

转载于:https://www.cnblogs.com/Ph-one/p/4220374.html

相关文章:

  • LCD1602小程序
  • STC51六中中断配置点亮一个LED
  • STC51几种简单的延时函数
  • GSM900TCP/UDP连接
  • arm-linux工具
  • 盎司
  • Win7下硬盘安装fedora17
  • sudo fdisk -l
  • 硬盘
  • 开发人员不可不看的 OBD通讯协议知识
  • Ubuntu 12.10 用wubi安装到硬盘中
  • ubuntu 12.04网络设置
  • ubuntu 12.04及12.10无法安装 ia32-libs
  • ubuntu文字界面与图形界面切换
  • Android下点亮LED
  • “寒冬”下的金三银四跳槽季来了,帮你客观分析一下局面
  • 【跃迁之路】【669天】程序员高效学习方法论探索系列(实验阶段426-2018.12.13)...
  • Angular 4.x 动态创建组件
  • avalon2.2的VM生成过程
  • bearychat的java client
  • Java 网络编程(2):UDP 的使用
  • JS基础篇--通过JS生成由字母与数字组合的随机字符串
  • js中forEach回调同异步问题
  • OpenStack安装流程(juno版)- 添加网络服务(neutron)- controller节点
  • Vue UI框架库开发介绍
  • 彻底搞懂浏览器Event-loop
  • 理清楚Vue的结构
  • 普通函数和构造函数的区别
  • 如何使用Mybatis第三方插件--PageHelper实现分页操作
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • 一个SAP顾问在美国的这些年
  • 专访Pony.ai 楼天城:自动驾驶已经走过了“从0到1”,“规模”是行业的分水岭| 自动驾驶这十年 ...
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • (2)nginx 安装、启停
  • (2)关于RabbitMq 的 Topic Exchange 主题交换机
  • (4.10~4.16)
  • (DenseNet)Densely Connected Convolutional Networks--Gao Huang
  • (附源码)ssm经济信息门户网站 毕业设计 141634
  • (三) diretfbrc详解
  • (一)VirtualBox安装增强功能
  • .axf 转化 .bin文件 的方法
  • .bat批处理(六):替换字符串中匹配的子串
  • .chm格式文件如何阅读
  • .gitignore文件---让git自动忽略指定文件
  • .mysql secret在哪_MYSQL基本操作(上)
  • .NET Core 实现 Redis 批量查询指定格式的Key
  • .Net转Java自学之路—SpringMVC框架篇六(异常处理)
  • /bin/bash^M: bad interpreter: No such file ordirectory
  • @RequestMapping-占位符映射
  • [2544]最短路 (两种算法)(HDU)
  • [C++]模板与STL简介
  • [CCIE历程]CCIE # 20604
  • [DAX] MAX函数 | MAXX函数
  • [English]英语积累本
  • [EULAR文摘] 脊柱放射学持续进展是否显著影响关节功能