当前位置:  开发笔记 > 编程语言 > 正文

std :: transform命令保证

如何解决《std::transform命令保证》经验,为你挑选了1个好方法。

在这个页面上有这个说明:

std::transform does not guarantee in-order application of unary_op or binary_op.

这是否意味着序列的结果顺序不能保证与输入序列的顺序相关,或者是否意味着,虽然保证了变换的最终结果的顺序,但是可以创建单个元素乱序(虽然它们仍会按顺序出现)?



1> Brian..:

结果序列的顺序是固定的.特别是标准说:

效果:通过i范围中[result,result + (last1 - first1))的每个迭代器分配一个等于op(*(first1 + (i - result))或的新对应值binary_op(*(first1 + (i - result)), *(first2 + (i - result))).

这保证了结果范围的第一个元素将通过变换输入范围的第一个元素来获得,依此类推.但是,op未指定进行调用的顺序.

推荐阅读
路人甲
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有