您好,欢迎来到画鸵萌宠网。
搜索
您的当前位置:首页c++ 复合语句的作用域

c++ 复合语句的作用域

来源:画鸵萌宠网

复合语句的作用域

在复合语句的头部,我们除了能使用外部的变量外,也可以直接声明新的变量,这样的局部变量的作用域将会是整个复合语句。对于一些只可能在复合语句内部使用的变量,我们就可以用这样的方法避免它的作用域扩散到外部,这有利于结构化编程。

复合语句的作用域

#include<iostream>
using namespace std;
//复合语句的作用域
int main()
{
//复合语句
if ( int a = 0 )
	cout << "a的值为:" << a <<endl;
else
 	cout << "a的值为:" << a << endl;
 	//a在复合语句外不可见
 	//cout <<"a的值为:" << a << endl;
 	return 0 ;
}
 	

示例展示了在条件语句头部定义变量的情况。a在条件语句中可见,而语句结束后自动销毁。如果我们删除最后打印语句的注释符,那么编译器会因为找不到a的定义而报错。
像这样

#include<iostream>
using namespace std;
//复合语句的作用域
int main()
{
//复合语句
if ( int a = 0 )
	cout << "a的值为:" << a <<endl;
else
 	cout << "a的值为:" << a << endl;
 	//a在复合语句外不可见
 	cout <<"a的值为:" << a << endl;
 	return 0 ;
}
 	

报错为:

如若本文对您有帮助,请点赞支持一下~

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo8.com 版权所有 湘ICP备2023022238号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务