
C++第十八章
可爱头
这个作者很懒,什么都没留下…
展开
-
C++第十八章:未命名空间--static--extern
tatic关键字static关键字的作用有很多,声明静态全局变量,类的静态成员等。这里主要讨论他在修饰全局变量时与extern的区别。有两点需要注意:1、static修饰全局变量时,声明和定义是同时给出的;2、static的全局作用域只是自身编译单元。编译单元:每个cpp就是一个编译单元,每个编译单元相互之间是独立且相互不知的。一个编译单元(Translation Unit)是指一个.c...原创 2019-11-18 23:39:37 · 702 阅读 · 0 评论 -
C++第十八章:1.作用域与实参相关的查找---2.两种using 对重载函数的作用域影响
作用域与实参相关的查找首先对命名空间内部名字查找按一般由内向外依次每个作用域进行,有时候会发生名字内层对外层的隐藏,注意即可。实参相关的查找与类类型参数:例外:当我们给函数传递一个类类型的对象时,除了在常规的作用域查找外还会查找实参类所属的命名空间,对于传递类的引用或指针的调用同样有效考虑以下:std::string s;std::cin>>s;//等价于operator&...原创 2019-11-18 10:57:45 · 300 阅读 · 0 评论 -
C++第十八章:1.命名空间using声明和using指示的使用
使用using声明和using指示对一些普通的参数的作用域影响:1.一个using声明一次只引入一个命名空间成员,从using声明点开始,直到包含该using声明的作用域的末尾,名字都是可见的。外部作用域中定义的同名实体被屏蔽。可以用在全局,局部,命名空间,以及类的作用域2.一个using指示,使得所有可见,并不是一次只引入一个,并且不能出现 在类的作用域using与作用域:using指示...原创 2019-11-18 00:16:55 · 1204 阅读 · 0 评论 -
C++第十八章:作用域
全局作用域,名字空间作用域,类域,局部作用域,语句作用域之间的关系如下图所示:从上图可以看出,在全局作用域中,定义了两个名字空间H和K。名字空间H又分别位于两个CPP文件A和B中。由此可见,名字空间作用域是可以跨越CPP文件的。在名字空间K中,除了定义了类型外,又定义了一个名字空间N,所以说,名字空间之间是可以互相嵌套的。另外,在名字空间中可以定义类,函数,变量,模版等。在全局作用域中,除了...原创 2019-11-17 00:05:41 · 118 阅读 · 0 评论