C++ 标识符的作用域
包括:局部作用域、全局作用域、文件作用域、函数作用域、函数原型作用域、名空间作用域、类作用域
注意:潜在作用域,也就是同名变量的作用域问题。
1. 局部作用域
指在函数定义或者复合语句中,从标识符的定义点开始到函数或者复合语句结束之间的程序段。
在同一个局部作用域内不能出现相同名字的两个局部变量(包括形参)。
一个函数内的复合语句又是一个局部作用域,也就是在函数内有某个变量时,复合语句中可以有另外一个同名字的变量。
2. 全局作用域
指对构成C++程序的所有源文件。
在C++标准中,把全局作用域归于连接控制范畴。
通常把全局标识符的生命放在某个头文件中。
3. 文件作用域
指单独的一个源文件。
在全局标识符的定义中加上static修饰符,该全局标识符就变成了具有文件作用域的标识符。
4. 函数作用域
指由整个函数定义所构成的程序段。
语句标号(如goto语句中使用的语句标识)是唯一的具有函数作用域的标识符。
5. 函数原型作用域
指用于函数声明的函数原型,其中的形参的作用域从函数原型开始到函数原型结束。
如:void f(int x, double y); //其中的x和y的作用域从“(”开始到")"结束。
6. 名空间作用域
无名的名空间定义不能在其他地方调用
7. 类空间作用域
C++ 标识符的作用域相关推荐
- 标识符的作用域与可见性
作用域是一个标识符在程序正文中有效的区域. 作用域分类: 函数原型作用域 局部作用域(块作用域) 类作用域 文件作用域(作用域到文件尾结束) 命名空间作用域(暂略) 作用域的可见性: 可见性是从对标识 ...
- C语言 标识符的作用域
#include <stdio.h> int x = 20;void print_x(void){puts("------print_x函数调用文件作用域------" ...
- C语言作用域、链接属性和存储类型
C/C++中作用域详解 作用域 编译器可以确认的4种作用域-代码块作用域.文件作用域.函数作用域和原型作用域,一般来说,标识符(包括变量名和函数名)声明的位置决定它的作用域. (1)代码块作用域 一对 ...
- 【 C 】作用域、链接属性、存储类型、static 关键字简介及总结
目录 作用域 代码块作用域 文件作用域 原型作用域 函数作用域 链接属性 存储类型 总结 作用域 当变量在程序中的某个部分被声明时,它只有在程序的一定区域才能被访问.这个区域由标识符的作用域(scop ...
- 高级C语言教程-作用域
C语言中一共有4中作用域:代码块作用域.文件作用域.函数作用域和原型作用域. 1.代码块的作用域,位域一对大括号中的所有语句构成一个代码块(Block)任何在代码块开始声明的标识符都具有代码块作用域, ...
- if python 判断函数返回值_Python函数的返回值和作用域
函数的返回值和作用域 1.返回值 def guess(x): if x > 3: return "> 3" else: return "<= 3&quo ...
- node.js 函数外定义的变量 函数内赋值后为什么不能带出_(44)python少儿编程之函数(五)--- 作用域...
函数嵌套 在一个函数内定义了另一个函数 如图,定义了一个outer函数,然后在outer函数里面又定义了一个inner()函数,此时我们只能在outer函数调用inner()函数,如果在outer函数 ...
- week04_python函数返回值、作用域
函数的返回值: Python函数使用return语句返回"返回值" 所有函数都有返回值,如果没有return语句,隐式调用return None return语句并不一定是函数的语 ...
- C++里的花括号{},块,作用域
{ } 里的内容是一个"块". 单独的{ }在执行顺序上没有改变,仍然是顺序执行,不同的是标识符的作用域限定 . #include <iostream> #includ ...
最新文章
- [ZZ]知名互联网公司Python的16道经典面试题及答案
- 7篇Nature,2篇Science!这所985高校迎来顶刊大丰收
- 借助JRebel使Tomcat支持热部署
- Java的知识点21——String类、StringBuffer和StringBuilder、不可变和可变字符序列使用陷阱
- 2017寒假练习题解 第四周 2.6-2.12
- Vim 高亮显示单词并查找
- MySQL NULL 值处理
- 033-Unit 11 Advanced Uses of the vi Editors
- python 生成excel像素画_【译】只用 CSS 就能做到的像素画/像素动画
- 清华大学黄民烈老师:本科生如何做出好的科研
- 【论文复现】使用CNN进行文本分类
- BZOJ.4832.[Lydsy1704月赛]抵制克苏恩(期望DP)
- ug冲模标准件库_ug标准件库免费
- Vue项目中安装axios
- 计算机中人民币数字格式,数字转人民币金额大写
- matlab中complex的详细用法,Matlab基本函数-complex函数
- APP-安装cisco anyconncet app for mac inter
- 响应式极简新闻发布系统源码
- 写给 35 岁的自己!
- 【HTML | CSS | JAVASCRIPT】再见2022,一起来写一个响应式跨年倒计时吧(附源码)