transform()算法有两种形式,我很好,第一种。STL std :: transform
这里是第二个模板规格:
template <class InputIterator1, class InputIterator2,
class OutputIterator, class BinaryOperation>
OutputIterator transform (InputIterator1 first1, InputIterator1 last1,
InputIterator2 first2, OutputIterator result,
BinaryOperation binary_op);
我的书上说,
在第二种形式,改造使用将所值的二分 操作功能应用来自 序列的元素要在其第一参数中进行变换,并且将来自第二序列的元素 作为其第二参数。
q1。为什么没有第二个序列的输入迭代器参数指示第二个序列的结束?即为什么transform()
中没有InputIterator last2
参数?
q2。当第一和第二序列的长度不相等时会发生什么?
q3。块引用文字说二元运算符函数。那么这个操作符函数在这种情况下意味着什么?没有任何二进制函数有效吗?
我能够推断出该第一个参数是N元素从所述第一序列,其第二个参数是第二个序列中的元素N.但为什么会有“操作员功能”这个术语?说什么“操作员功能” – rimiro
@PeteBecker:好点!固定。 –