替換演算法將指定元素值替換為新值,使用原型如下,將迭代器[first,last)中值為old_value的元素全部替換為new_value值。
函數原型:
template < class ForwardIterator, class T > void replace ( ForwardIterator first, ForwardIterator last, const T& old_value, const T& new_value );
參數說明:
first, last
指出要替換的迭代器區間[first,last)
old_value
將要被替換的元素值
new_value
將要替換舊值的新值
程式樣本:
/******************************************************************* * Copyright (C) Jerry Jiang * * File Name : replace .cpp * Author : Jerry Jiang * Create Time : 2012-4-29 22:22:18 * Mail : jbiaojerry@gmail.com * Blog : http://blog.csdn.net/jerryjbiao * * Description : 簡單的程式詮釋C++ STL演算法系列之十九 * 變易演算法 : 替代 replace * ******************************************************************/ #include <iostream>#include <algorithm>#include <vector>using namespace std;int main () { int myints[] = { 10, 20, 30, 30, 20, 10, 10, 20 }; vector<int> myvector (myints, myints+8); // 10 20 30 30 20 10 10 20 replace (myvector.begin(), myvector.end(), 20, 99); // 10 99 30 30 99 10 10 99 cout << "myvector contains:"; for (vector<int>::iterator it=myvector.begin(); it!=myvector.end(); ++it) cout << " " << *it; cout << endl; return 0;}
*******************************************************************************************************************************
C++經典書目索引及資源下載:http://blog.csdn.net/jerryjbiao/article/details/7358796
********************************************************************************************************************************