【发布时间】:2020-04-23 15:35:42
【问题描述】:
例如,我有一个 2d 向量和一个 1d 向量,我想使用算法库中的 std::copy_if 从每一行复制第一项:
std::vector<std::vector<std::string>> names{ { "Allan", "Daniel", "Maria" }, {"John", "Louis", "Will"}, {"Bill", "Joe", "Nick"}};
所以我们必须将“Allan”、“John”和“Bill”复制到目标向量中,即 dst
std::vector<std::string> dst;
【问题讨论】:
-
为什么是
copy_if?这是一个硬性要求吗?我不明白这里的_if是什么 -
使用更少的代码是一个好习惯。
-
使用算法是很好的做法,但我在问,为什么特别是
copy_if?我想也许你有理由要求这个,如果没有,这只是你的第一个猜测,也可以,我只是好奇 -
有时这里的代码会被简化到很难看出实际动机的程度,因此可能是您确实需要使用
copy_if并且仅在这里的代码不再明显了。没关系,好像你得到了你要找的东西