C++ - "replace" 和 "replace_copy" 区别
2013-10-28 09:16
281 查看
"replace" 和 "replace_copy" 区别
两个函数"replace"和"replace_copy"都是标准库算法中的函数.
replace是替代某一个元素, replace_copy是复制并且替代某一个元素.
示例(VS2012):#include <iostream> // std::cout
#include <algorithm> // std::replace
#include <vector> // std::vector
int main () {
int myints[] = { 10, 20, 30, 30, 20, 10, 10, 20 };
/*replace*/
std::vector<int> myvector1 (myints, myints+8); // 10 20 30 30 20 10 10 20
std::replace (myvector1.begin(), myvector1.end(), 20, 99); // 10 99 30 30 99 10 10 99
std::cout << "replace() myvector1:";
for(const auto i : myvector1)
std::cout << i << " ";
std::cout << std::endl;
/*replace_copy*/
std::vector<int> myvector2 (8);
std::replace_copy (myints, myints+8, myvector2.begin(), 20, 78);
std::cout << "replace_copy() myvector2:";
for(const auto i : myvector2)
std::cout << i << " ";
std::cout << std::endl;
return 0;
}
相关文章推荐
- C++ - "replace" 和 "replace_copy" 区别
- C++的基础知识(十一)--数组做函数参数、数组名a与&a区别、数组名a的"数据类型"
- C++中头文件使用""与尖括号的区别
- C++ - "emplace_back" 和 "push_back" 的区别
- C++ - "emplace_back" 和 "push_back" 的区别
- C++中include头文件使用""与<>的区别
- "=="和equals方法的区别?
- 问题:c++中0,‘\0’,‘0’,"0"有什么区别
- input type="submit" 和"button"的区别及表单提交
- 解析文本文件 "r" 与 "rb" 模式的区别(Python)
- Fedora下Eclipse建立c++工程的"Unresolved inclusion: <iostream>"问题
- C++之"endl"与"\n"的区别
- VC2010中"Include Directories" 和 "Additional Include Directories"的区别
- c++执行程序出现"unable to find a version of the runtime"的错误提示
- c++实现对"[]"和"()"的重载
- c#中的"\r\n"区别?
- "=="和equals方法究竟有什么区别?
- "=="和 和 equals 方法究竟有什么区别
- c/c++中#include 与#include""区别
- Matlab中的逻辑运算"&&"与"&","||"与"|"的区别