replace()去除空格

执行redis 命令的时候会默认用 空格  分割命令,所以当value 中存在空格,就会导致命令执行错误。于是,我想到了用replace函数去除空格,发现了几个注意事项:

#include <algorithm>
std::replace (myvector.begin(), myvector.end(), ' ', '\0');
  1. 单引号里面必须有值,替换空字符为空,注意这里不能用'\0'虽然可以移除第一个空格但是字符串读到了结束标志就不会往后读了!
  2. replace函数是直接修改入参的!所以必须保证入参不是常量

/usr/include/c++/4.8.2/bits/stl_algo.h: In instantiation of ‘void std::replace(_FIter, _FIter, const _Tp&, const _Tp&) [with _FIter = __gnu_cxx::__normal_iterator<const char*, std::basic_string<char> >; _Tp = char]’:
OrderPool.cpp:226:85: required from here
/usr/include/c++/4.8.2/bits/stl_algo.h:4998:13: error: assignment of read-only location ‘__first.__gnu_cxx::__normal_iterator<_Iterator, _Container>::operator*<const char*, std::basic_string<char> >()’
*__first = __new_value;

原文链接: https://www.cnblogs.com/lthuang/p/11862837.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    replace()去除空格

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/305896

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月16日 上午3:15
下一篇 2023年2月16日 上午3:16

相关推荐