我是使用c++的新手。我有一个快速的问题,可能是一个愚蠢的问题。

streamsize prec = cout.precision(3);

据我所知,该声明的工作方式如下:将cout精度设置为3,但是将先前的精度值分配给prec

同样,我们可以简单地将函数结果(例如数学加法函数)分配给变量:
int z = addition(3,4);

在第二个中,它执行计算并将结果分配给变量z,而不是先前的值或默认值。我的理解正确吗?它们之间有什么区别?

最佳答案

函数返回的值完全取决于该特定函数。大多数函数只是返回其操作结果。

标准库流中的状态设置函数(例如precision)在其接口(interface)“我设置一个新值并返回旧值”中有点不寻常,但是只要记录了该函数的行为,它仍然是完全有效的(在他们的情况下)。

09-09 23:49
查看更多