標準では、関数コールバックを適用する順序が保証されていないことに気付きましたstd::transform
。また、コールバック関数またはファンクターに副作用を与えることはできません。しかし同時に、std::for_each
実際には注文を保証します。
1 つの推測では、変換は順序を保証しない高性能アルゴリズムを使用することができますが、O(N) は既に最高のアルゴリズムです。
では、コールバック関数の適用順序の観点から、標準がtransform
動作を行わないのはなぜですか? for_each
ユーザーは、この保証から利益を得ます。