如何选择类型的几点建议
和C语言一样,C++的设计准则之一也是尽可能地接近硬件。C++的算术类型必须满足各种硬件特质,所以它们常常显得繁杂而令人不知所措。事实上,大多数程序员应该对数据类型的使用作出限定从而简化选择的过程。以下是选择类型的一些经验准则:
- 当明确知道数值不可能是负数时,选用无符号类型;
- 使用int执行整数运算。在实际应用中,short常常显得太小而long一般和int有一样的尺寸(在我自己的机器上int是32位,而long是64位,所以此说法有待商榷)。如果你的数值超过了int的表示范围,选用long long;
- 在算术表达式中不要使用char或bool,只有在存放字符或布尔值时才使用它们。因为类型char在一些机器上是有符号的,而在一些机器上又是无符号的,所以如果使用char类型进行运算特别容易出错。如果你需要使用一个不大的整数,上那么明确指定它的类型是signed char或者unsigned char;
- 执行浮点数运算选用double,这是因为float通常精度不够而且双精度浮点数和单精度浮点数的计算代价相差无几。事实上,对于某些机器而言,双精度运算甚至比单精度还快。long double提供的精度在一般情况下是没有必要的,况且它带来的运行时消耗也不容忽视。

浙公网安备 33010602011771号