当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ std::replace()用法及代码示例


C++ STL std::replace() 函数

replace() 函数是算法头的库函数,用于在容器的给定范围内用新值替换旧值,它接受指向起始位置和结束位置的迭代器,要替换的旧值和新值要分配的值。

注意:使用 replace() 函数 - 包括<algorithm>标题或者您可以简单使用<bits/stdc++.h>头文件。

std::replace() 函数的语法

    std::replace(
        iterator start, 
        iterator end, 
        const T& old_value, 
        const T& new_value);

参数:

  • iterator start, iterator end- 这些是指向容器中开始和结束位置的迭代器,我们必须在那里运行替换操作。
  • old_value- 是要搜索并替换为新值的值。
  • new_value- 要分配的值而不是 old_value。

返回值: void- 它返回注意。

例:

    Input:
    vector<int> v{ 10, 20, 10, 20, 10, 30, 40, 50, 60, 70 };
    
    //replacing 10 with 99
    replace(v.begin(), v.end(), 10, 99);
    
    Output:
    99 20 99 20 99 30 40 50 60 70

C++ STL程序演示std::replace()函数的使用

在这个程序中,我们有一个向量,我们将一个新值分配给一个旧值。

//C++ STL program to demonstrate use of
//std::replace() function
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;

int main()
{
    //vector
    vector<int> v{ 10, 20, 10, 20, 10, 30, 40, 50, 60, 70 };

    //printing vector elements
    cout << "before replacing, v:";
    for (int x:v)
        cout << x << " ";
    cout << endl;

    //replacing 10 with 99
    replace(v.begin(), v.end(), 10, 99);

    //printing vector elements
    cout << "after replacing, v:";
    for (int x:v)
        cout << x << " ";
    cout << endl;

    return 0;
}

输出

before replacing, v:10 20 10 20 10 30 40 50 60 70
after replacing, v:99 20 99 20 99 30 40 50 60 70

参考:C++ std::replace()



相关用法


注:本文由纯净天空筛选整理自 std::replace() function with example in C++ STL。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。