我目前正在开发一个程序,其中一条说明指出:
“对于输出文件,当输出一个命令时,数据应该在一行中,没有“\n”。当输出一个新命令时,应该开始一个新行。”
在这种情况下,最好的选择是有一个命令数量的计数器,然后检查它是否大于 1,如果是,那么cout << data << endl;
直到你到达最后一个然后cout << data;
?我觉得这是一种非常低效的方法,还有比这更好的解决方案吗?谢谢!
idioms-for-for-each-between-every-consecutive-pair-of-elements 的字面意思是“当输出一个新命令时,应该开始一个新行”。
const auto* separator = "\n";
const auto* sep = "";
for(const auto& command : commands) {
std::cout << sep << command;
sep = separator; // No longer first command
}