复合语句
写在花括号{}中的内容组成的语句,就是复合语句。特别的,如果你只写了一个花括号,里面什么内容都没有,这也是一种空语句,相当于只有一个分号。
复合语句有三个主要特点:
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;
}