C++ Primer 语句作用域

欢迎阅读我的 【C++Primer】专栏

专栏简介:本专栏主要面向C++初学者,解释C++的一些基本概念和基础语言特性,涉及C++标准库的用法,面向对象特性,泛型特性高级用法。通过使用标准库中定义的抽象设施,使你更加适应高级程序设计技术。希望对读者有帮助!


目录

5.2语句作用域

可以在if、switch、while和for语句的控制结构内定义变量。定义在控制结构当中的变量只在相应语句的内部可见,一旦语句结束,变量也就超出其作用范围了:

cpp 复制代码
while(int i=get_mum())//每次选代时创建并初始化
cout << i << endl;
i = 0;//错误:在循环外部无法访问

如果其他代码也需要访问控制变量,则变量必须定义在语句的外部:

cpp 复制代码
 //寻找第一个负值元素
auto beg=v.begin();
while(beg!=v.end()&&*beg>=0)
    ++beg:
if(beg==v.end())
//此时我们知道v中的所有元素都大于等于0

因为控制结构定义的对象的值马上要由结构本身使用,所以这些变量必须初始化。

相关推荐
张人玉40 分钟前
c#Lambda 表达式与事件核心知识点整理
开发语言·python·c#
Villiam_AY5 小时前
Redis 缓存机制详解:原理、问题与最佳实践
开发语言·redis·后端
UQWRJ5 小时前
菜鸟教程R语言一二章阅读笔记
开发语言·笔记·r语言
岁忧7 小时前
macOS配置 GO语言环境
开发语言·macos·golang
朝朝又沐沐8 小时前
算法竞赛阶段二-数据结构(36)数据结构双向链表模拟实现
开发语言·数据结构·c++·算法·链表
魔尔助理顾问8 小时前
系统整理Python的循环语句和常用方法
开发语言·后端·python
Ares-Wang8 小时前
JavaScript》》JS》 Var、Let、Const 大总结
开发语言·前端·javascript
逝雪Yuki8 小时前
Leetcode——287. 寻找重复数
c++·leetcode·二分查找·双指针·环形链表
遇见尚硅谷9 小时前
C语言:*p++与p++有何区别
c语言·开发语言·笔记·学习·算法
SkyrimCitadelValinor9 小时前
c#中让图片显示清晰
开发语言·c#