集团加括号和不加括号的区别

《C++Primer第五版中文版》中提到算术運算符“/”表示除法,整数相除结果还是整数也就是说,如果商含有小数部分直接弃除
所以1/2的值应该是0.5,但是需要把小数弃除所以值为0,最终导致z*(1/2)的值是0
如果非要得到0.5,则可以把表达式改为(1.0/2)在《C++Primer第五版中文版》中提到如果算术运算符的运算对象类型不相同则需要将运算对象的类型统一后再求值,并且统一类型的原则是:尽可能避免精度损失。在表达式(1.0/2)中1.0的类型是double,2的类型是int所以需要把2嘚类型改为double,即(1.0/2.0)该表达式的值是double类型,0.5
}
// 一个默认构造函数一个自定义構造函数 // 一个复合默认构造函数

【2】加括号与不加的区别

    1. 若括号为空,即无实参项那么理解为调用默认构造函数;

    2. 若括号非空,即有实参项可以理解为调用重载构造函数,或复合默认构造函数

    调用默认构造函数,或复合默认构造函数

【3】默认构造函数 与 复合默认构造函数的区别

默认构造函数:编译器会为每一个类默认提供一个构造函数,称之为默认构造函数默认构造函數一般参数为空。

复合默认构造函数:一个由用户自定义的所有形式参数都赋有默认值的构造函数称之为复合默认构造函数。

一个类中若一旦有一个用户自定义构造函数,那么由编译器提供的默认构造函数就不再存在用户自定义的构造函数为默认构造函数的重载版。

默认构造函数不复存在时用户必须为这个类再自定义一个复合默认构造函数(选所有自定义构造函数其中之一,把形式参数均赋默认值即可)

不论自定义构造函数(即构造函数的重载版)有多少个,只允许有一个复合默认构造函数

}

来源:4-8 循环结构之for循环(一)

  • 括号不括号得看上下文你就断章取义的说这两个有无差别无意义的。

  • 加括号的是在内部执行没加的是在外部执行;内部执行完后再到外部执荇;比如

C语言入门视频教程,带你进入编程世界的必修课-C语言

}

我要回帖

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信