using声明和using指示
using声明(using declaration)
using namespacename::namespacemember;
using声明一次只引入命名空间的一个成员。从效果上看就好像using声明语句为命名空间的成员在当前作用于内创建了一个别名一样。
using指示(using directive)
using namespace namespacename;
using指示令整个命名空间的所有内容变得有效。从效果上看,using指示的命名空间好像是定义在最近的外层作用域中。
namespace blip{
int i = , j = , k = ;
}
int j = ;
void manip()
{
using namespace blip;
++i; //将blip::i设定为17
++j; //错误:全局的j还是blip::j?
++::j; //正确:将全局的j设定为1
++blip::j; //正确:将blip;:j设定为16
int k = ; //局部的k隐藏了blip::k,因为
//using指示就好像在manip之前的
//全局作用域定义了内容
++k; //这个k是98
++blip::k; //局部定义过后就得用原本的方
//式来操作blip的k,这里k为24
}
using声明和using指示的更多相关文章
- Swift5 语言参考(六) 声明
一个声明引入了一个新的名称或构建到你的程序.例如,您使用声明来引入函数和方法,引入变量和常量,以及定义枚举,结构,类和协议类型.您还可以使用声明来扩展现有命名类型的行为,并将符号导入到其他地方声明的程 ...
- OpenID Connect Core 1.0(九)声明(Claims)
5 声明(Claims) 这一节说明客户端如何获取关于终端用户声明和验证事件.它还定义了一组标准的基本声明配置.预定义一组可请求的声明,使用特定的scope值或能用于请求参数中的个人声明.声明可以直接 ...
- ISO/IEC 9899:2011 条款6.7.6——声明符
6.7.6 声明符 语法 1.declarator: pointeropt direct-declarator direct-declarator: identifier ( declar ...
- c++新特性实验(5)声明与定义:属性列表(C++11 起)
1.初识属性 1.1 实验A: noreturn 属性 [[ noreturn ]] static void thread1(void *data){ cout << "nore ...
- 转<%%>、<%=%>、<%$%>、<%@%>的区别
1. 未定义的命名空间前缀“xsd” 上周在项目开发中遇到这样的一个问题,在一个页面用到了自定义的Picker控件,在IE6.7.8.9以及IE10兼容模式下都没有任何问题,但是一换到IE10时已选择 ...
- C++ 用于大型程序的工具
<C++ Primer 4th>读书笔记 相对于小的程序员团队所能开发的系统需求而言,大规模编程对程序设计语言的要求更高.大规模应用程序往往具有下列特殊要求: 1. 更严格的正常运转时间以 ...
- 每日学习心得:未定义的命名空间前缀"xsd"问题和<%%>、<%=%>、<%$%>、<%@%>的区别
2013-6-29 1. 未定义的命名空间前缀“xsd” 上周在项目开发中遇到这样的一个问题,在一个页面用到了自定义的Picker控件,在IE6.7.8.9以及IE10兼容模式下都没有任何问题,但是一 ...
- C++名字空间/C++命名空间
0.序言 名字空间是C++提供的一种解决符号名字冲突的方法. 一个命令空间是一个作用域,在不同名字空间中命名相同的符号代表不同的实体. 通常,利用定义名字空间的办法,可以使模块划分更加方便,减少模块间 ...
- C++Primer笔记(2)
大型程序一般都是分为多个模块,由多人协作来进行开发的,其中还不可避免的会用到库.而各个模块代码以及库中会定义大量变量,而大量变量的命名,不可避免的会遇见“重名”的问题.“重名”的情况我们称之为命名空间 ...
随机推荐
- [C#] readonly vs const
C#中的readonly和const两个关键字都可以用来定义系统变量,那两者之间有什么区别呢? 1. const变量赋值后,就不可以对其进行修改.且在定义时就需要给它赋值,使用const修饰的变量是s ...
- python 学习之路开始了
python 学习之路开始了.....记录点点滴滴....
- python列表技巧
1.访问列表元素 test1 = ["chengqian","and","what"] print(test1[0])#第一个元素 prin ...
- log4net 入门使用
log4net 是dotnet平台下的一个日记记录组件. 一 NuGet中安装log4net包: 二 配置log4net.config文件 配置文件内容: <?xml version=&quo ...
- android的样式(style)与主题(theme)
Android上的Style分为了两个方面: 1,Theme是针对窗体级别的,改变窗体样式: 2,Style是针对窗体元素级别的,改变指定控件或者Layout的样式. Android系统的themes ...
- ubuntu 中安装 Redis
1.下载安装root@21ebdf03a086:/# apt-cache search redisroot@21ebdf03a086:/# apt-get install redis-server a ...
- ASP.NET MVC 缓存页面(方法)
- nej+regular环境使用es6的低成本方案
本文来自 网易云社区 . 希望在生产环境中使用es6/7,babel应该是最普遍的选择.这是babel官网中,它对自己的定义: Babel 自带了一组 ES2015 语法转化器.这些转化器能让你现在就 ...
- BF、kmp算法
第七周 字符串匹配 BF算法,kmp算法 BF:时间复杂度为 O(m*n) int Index_BF(SString S, SString T, int pos) { ; while (i <= ...
- HTML5QQ登录cav demo
<!DOCTYPE html> <head> <meta http-equiv="Content-Type" content="tex ...