3-C++程序的结构1.1
数据的共享和保护机制是C++的重要特性之一。
1、标识符的作用域与可见性
作用域讨论的是标识符的有效范围,可见性是讨论标识符是否可以被引用。
a、作用域
作用域是一个标识符在程序正文中有效的区域。C++中标识符的作用域有函数原型作用域、块作用域(局部作用域)、类作用域和文件作用域。
1)函数原型作用域
它是c++程序中最小的作用域,在函数原型声明时形式参数的作用范围就是函数原型作用域。
如,double area(double radius),标识符radius的作用范围就在函数area形参列表的左、右括号之间。
2)块作用域
所谓块就是一堆大括号括起来的一段程序。在块中声明的标识符,其作用域从声明处开始,一直到块结束的大括号为止。具有块作用域的变量也称为局部变量。
3)类作用域
类可以被看成是一组有名成员的集合,类的成员M具有类作用域,对M的访问方式如下:
如果在X的成员函数中没有声明同名的局部作用域标识符,那么在该函数内可以访问成员M。
通过表达式x.M或者x::M。这正是程序中访问对象成员的最基本方法。
通过prt->M这样的表达式,其中prt为指向X类的一个对象的指针。
4)文件作用域
不在前述各个作用域中出现的声明,就具有文件作用域,这样声明的标识符其其作用域开始于声明点,结束于文件尾。比如全局变量。故具有文件作用域的变量也称为全局变量。
2、可见性
下面从标识符引用的角度来看,程序运行到某一点,能够引用到的标识符,就是该处可见的标识符。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】