C++ STL中元素替换功能的强大函数


学习C++ STL的目的不是让我们的编程更复杂,而是让我们的编程更简单,比如要实现C++ string类型的字符串字符替换功能就可以用到一个很强大的函数replace,它的语法声明如下:

template<caass FwdIt, class T>
    void replace(FwdIt first, FwdIt last,
        const T& vold, const T& vnew);要使用这个函数,首先我们得引入头文件,如下:

#include <algorithm>

using namespace std;

我们要实现替换功能,请看下面一段代码

  1. for (int i = 0; i < (int)strReplace.size(); i ++)  
  2.     {  
  3.         if ('0' == strReplace[i])  
  4.         {  
  5.             replace(strReplace.begin()+i,strReplace.end(),'1','3');  
  6.             replace(strReplace.begin()+i,strReplace.end(),'3','1');  
  7.         }  
  8.         if ('3' == strReplace[i])  
  9.         {  
  10.             replace(strReplace.begin()+i,strReplace.end(),'0','2');  
  11.             replace(strReplace.begin()+i,strReplace.end(),'2','0');  
  12.         }  
  13.     }  

这样,我们就实现了我们想要的功能,也没必要自己去写了,当然对于C/C++初学者,或者是在准备面试,笔试的时候我们可以考虑怎么去自己实现,而在我们的日常工作中我觉得还是直接拿来用就可以了,大家也不妨试一下吧!

相关内容