在 C++ 中,有没有一种方法可以在 vector 的每个元素上调用函数,而不使用遍历所有 vector 元素的循环?类似于 Python 中的“ map ”。
最佳答案
您已经收到了几个提到 std::for_each
的答案.
虽然这些回答了您提出的问题,但我要补充一点,至少根据我的经验,std::for_each
是关于标准算法。
我使用(例如)std::transform
,基本上是 a[i] = f(b[i]);
或 result[i] = f(a[i], b[i]);
比 std::for_each
更频繁。许多人经常使用 std::for_each
来打印集合的元素;为此,std::copy
与 std::ostream_iterator
因为目的地工作得更好。
关于c++ - 在 C++ vector 的每个元素上调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10516495/