string::erase的三種函式原形一般的對於需要刪除字串開始和結尾的空格的**,經常為1、iterator erase(
iterator_first,iterator_last);2、iterator erase(iterator_it);3、basic_string& erase(size_type_pos= 0,size_type_count =npos);
1#include
<
iostream
>
2#include
<
string
>
3using
namespace
std;45
void
main()6
1#include
<
iostream
>
2#include
<
string
>
3using
namespace
std;45
void
main()6
結論1、只有第3種函式原形被呼叫。
2、湊巧的是,當 strtest.find_last_not_of(' ')返回 string::npos的時候,對其加1恰好不會引起任何的***。string::npos被定義為-1,所以當strtest.find_last_not_of(' ')返回-1的時候正好需要刪除0個字元。這種巧合儘管縮短了**,但是卻導致不易被理解.
3、size_type顯然是從1開始計數的,既如果第乙個字元就是目的字元,那麼find_***函式返回1。
C 中string erase函式的使用
文章出自 erase函式的原型如下 1 string erase size t pos 0,size t n npos 2 iterator erase iterator position 3 iterator erase iterator first,iterator last 也就是說有三種用法...
C 中string erase函式的使用
erase函式的原型如下 1 string erase size t pos 0,size t n npos 2 iterator erase iterator position 3 iterator erase iterator first,iterator last 也就是說有三種用法 1 er...
c 中string erase函式的使用
erase函式的原型如下 1 string erase size t pos 0,size t n npos 2 iterator erase iterator position 3 iterator erase iterator first,iterator last 也就是說有三種用法 1 er...