Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/164.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 使用std::cout一次比多次显示相同数量的数据更有效吗?_C++_Performance - Fatal编程技术网

C++ 使用std::cout一次比多次显示相同数量的数据更有效吗?

C++ 使用std::cout一次比多次显示相同数量的数据更有效吗?,c++,performance,C++,Performance,比如说, 这样显示这些变量会更节省内存吗: std::cout << "First char is " << char1 << " and second char is " << char2; std::cout那么小的程序没有区别。掷骰游戏具有可读性。您希望它快速、简单还是更可读?理论上,将其作为一条语句会更快,因为编译器可以更自由地重新排列参数求值顺序。然而,这是在谈论0.00000000000001%的差异,毫无意义。不要在意这一点-瓶颈在

比如说,

这样显示这些变量会更节省内存吗:

std::cout << "First char is " << char1 << " and second char is " << char2;

std::cout那么小的程序没有区别。掷骰游戏具有可读性。您希望它快速、简单还是更可读?

理论上,将其作为一条语句会更快,因为编译器可以更自由地重新排列参数求值顺序。然而,这是在谈论0.00000000000001%的差异,毫无意义。不要在意这一点-瓶颈在控制台本身

无论如何,列对齐确实有助于提高可读性,因此请尝试以下方法:

std::cout <<       "First char is " << char1;
std::cout << " and second char is " << char2;

std::cout如果您要在控制台上打印任何内容,控制台将成为瓶颈。这与以前没有什么区别。这些都是函数调用,要么隐式传递参数(链接时)要么显式传递参数(编写新语句时)。我认为第二个更容易阅读。这对使用代码的人来说可能更有效。这对大型程序也没有任何影响。你可以有一个包含10000个链式运算符的语句,也可以有10000个没有链式运算符的语句,结果都是一样的。哦,参数重新排序确实是一个很好的观点。我看不出你是如何从中获得性能提升的,但是嘿。
std::cout <<       "First char is " << char1;
std::cout << " and second char is " << char2;
std::cout <<       "First char is " << char1
          << " and second char is " << char2;