C++语言中,表达式的一部分能够组成独立的语句。所以必须加分号分割。
c = a - b; // 成立
c = a; -b; // 也成立
if (1==1) ; do_something(); // 成立
if (1==1) do_something(); // 也成立
class foo {}; bar; // 成立,含义为独立执行bar这个语句
class foo {} bar; // 也成立,含义为将bar定义为foo类
代码的书写本质上说是可以一行到底的,但是不太容易看,多行书写实质上还是会将这些行拼接,如果没有分号作为分隔符,会产生歧义,当然现在很多语言也采用了其他办法,比如python用对齐之后的层次关系