0

我目前正在开发一个程序,其中一条说明指出:

“对于输出文件,当输出一个命令时,数据应该在一行中,没有“\n”。当输出一个新命令时,应该开始一个新行。”

在这种情况下,最好的选择是有一个命令数量的计数器,然后检查它是否大于 1,如果是,那么cout << data << endl;直到你到达最后一个然后cout << data;?我觉得这是一种非常低效的方法,还有比这更好的解决方案吗?谢谢!

4

1 回答 1

2

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
}
于 2020-04-11T10:23:22.780 回答