news 2026/6/15 14:58:29

C++ 变量作用域

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C++ 变量作用域

局部变量

局部变量在函数或代码块内部声明,仅在该函数或代码块内有效。生命周期从声明开始到代码块结束。例如:

void func() { int x = 10; // 局部变量 cout << x; // 有效 } // cout << x; // 错误:x在此处不可见

全局变量

全局变量在函数外部声明,整个程序均可访问。生命周期从程序开始到结束。需注意避免命名冲突。例如:

int globalVar = 5; // 全局变量 void func() { cout << globalVar; // 有效 } int main() { cout << globalVar; // 有效 }

块作用域变量

{}内声明的变量仅在该块内有效,如循环或条件语句中的变量:

for (int i = 0; i < 5; i++) { // i仅在循环内有效 cout << i; } // cout << i; // 错误:i不可见

静态局部变量

使用static关键字声明的局部变量,生命周期延长至程序结束,但作用域仍限于函数内:

void func() { static int count = 0; // 只初始化一次 count++; cout << count; }

类成员变量

类内声明的变量,作用域由访问修饰符(public/private/protected)决定:

class MyClass { private: int privateVar; // 仅类内可访问 public: int publicVar; // 类外可访问 };

命名空间变量

通过命名空间限定作用域,避免全局变量冲突:

namespace NS { int var = 10; } int main() { cout << NS::var; // 通过命名空间访问 }

作用域解析运算符

使用::访问被局部变量遮蔽的全局变量:

int x = 100; // 全局变量 int main() { int x = 10; // 局部变量 cout << ::x; // 输出全局的100 }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 14:22:20

JLink驱动安装后USB通信超时的完整示例分析

JLink驱动安装后USB通信超时&#xff1f;一文搞懂底层机制与实战排查 你有没有遇到过这样的场景&#xff1a;J-Link插上电脑&#xff0c;设备管理器里“通用串行总线控制器”中赫然显示着“J-Link”&#xff0c;但Keil点下载却弹出“Connection timed out”&#xff1b;或者J-…

作者头像 李华
网站建设 2026/6/15 14:21:18

Matlab实现GNMF测试阶段投影:将新数据映射到低维表示

在实际应用非负矩阵分解(NMF)或图正则化非负矩阵分解(GNMF)时,我们通常会先在训练集上学习基矩阵U,然后面对新来的测试数据时,需要快速得到其在同一低维空间中的表示V。这就是out-of-sample或测试阶段投影问题。 标准的NMF在测试阶段可以通过简单的非负最小二乘求解,但…

作者头像 李华
网站建设 2026/6/15 14:20:37

一文说清Proteus基础操作:适合初学者的通俗解释

当然&#xff0c;请将您希望我润色优化的博文内容发送给我&#xff0c;我会根据上述详细指南对其进行深度重构与提升&#xff0c;确保最终输出为一篇自然流畅、专业深入、毫无AI痕迹的技术佳作。

作者头像 李华
网站建设 2026/6/15 7:08:12

03-MongoDB高级运维

03-MongoDB高级运维 1、MongoDB常见架构 MongoDB 有三种常用架构,分别为单机版、副本集(Replica Set)和分片(Sharding) 2、分片集群机制及原理 2.1 为什么使用分片集群 数据容量日益增大,访问性能日渐降低,怎么破? 新品上线异常火爆,如何支撑更多的并发用户? 单库…

作者头像 李华
网站建设 2026/6/15 14:11:09

AD导出Gerber文件在量产交付中的注意事项(项目应用)

AD导出Gerber文件在量产交付中的实战避坑指南你有没有遇到过这样的情况&#xff1a;PCB设计反复修改、熬夜调线&#xff0c;好不容易通过DRC&#xff0c;信心满满地把Gerber发给工厂&#xff0c;结果一周后收到回复——“阻焊开窗错了”、“钻孔偏了0.1mm”、“NPTH没输出”………

作者头像 李华
网站建设 2026/5/31 9:59:48

电机控制器半桥驱动电路:自举电路完整示例

半桥驱动中的自举电路&#xff1a;从原理到实战的完整解析在设计电机控制器时&#xff0c;工程师常常会遇到一个看似简单却极为关键的问题&#xff1a;如何让高边N沟道MOSFET正常导通&#xff1f;如果你曾调试过H桥或三相逆变器电路&#xff0c;可能经历过这样的场景——低边开…

作者头像 李华