【c++教程】4.2-复合语句

本文详细介绍了C++中的复合语句,包括其特点、作用及使用场景。讨论了是否应总是使用复合语句的问题,指出在代码易变性和美观性的权衡中,复合语句的选择应视具体情况而定。最后提供了一种编写代码的建议,以避免因需求变化导致的代码调整困难。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

复合语句

写在花括号{}中的内容组成的语句,就是复合语句。特别的,如果你只写了一个花括号,里面什么内容都没有,这也是一种空语句,相当于只有一个分号。

复合语句有三个主要特点:

1,整个花括号中虽然可能包括了多条语句,但是算作一个复合语句。

2,复合语句有自己的作用域,因此在离开复合语句以后,其中定义的变量会销毁。

3,复合语句的结束不需要分号,当然也许从这是一个语句的角度来说,应该要写分号才对,但是不写分号可以算作是一种福利。也就是既然已经知道它在哪里结束了,就不用再额外写结束标志了。

复合语句的作用

1,当只需要一条语句,但是一条语句无法满足实际需要的时候,需要使用复合语句。经常会发生于选择或者循环语句使用的时候。

#include <iostream>

using namespace std;

int main()
{
	int a = 500;
	if (a > 0)
	{
		a += 20;
		cout << "a: " << a << endl;
	}
}

2,由于复合语句有自己独立的作用域,因此,可以通过复合语句来定义重名变量。

这个在很多情况下,可能是很有用的。因为很多时候,给变量起一个好的名字也是很困难的,尤其在反复使用相同的功能的情况下,如果必须保证变量不重名的话,很可能就要加数字表示了。因此,如果可以将定义重名变量的部分写入复合语句之中,就可以让变量名可以重复使用。

#include <iostream>

using namespace std;

int main()
{
	{
		int a = 520;
		cout << a << endl;
	}

	// 这两个a所在的作用域不同,不会互相影响
	int a = 1314;
	cout << a << endl;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值