C++:string erase函数与reverse函数

erase函数的原型:
iterator erase ( iterator position );

string& erase ( size_t pos = 0, size_t n = npos );

iterator erase ( iterator first, iterator last );

解释一下,嘿嘿,他和上面是一一对应的
erase(position);删除position处的一个字符(position是个string类型的迭代器)

erase(pos,n); 删除从pos开始的n个字符,比如erase(0,1)就是删除第一个字符

erase(first,last);删除从first到last之间的字符(first和last都是迭代器)

 #include 
#include 
using namespace std;

int main ()
{
  string str ("I Love YX who are very fat!!!");
  string::iterator it;

  // 用法(1)
  it=str.begin()+6;
  str.erase (it);
  cout << str << endl;


  // 用法(2)
  str.erase (13,8);
  cout << str << endl;

  // 用法(3)
  str.erase (str.begin()+3, str.end()-4);
  cout << str << endl;
  return 0;
}

output

I LoveYX whoy fat!!!
I Love YX whoy fat!!!
I Lt!!!

reverse()函数将左闭右开区间内的元素全部逆序;
reverse_copy()会将(sourceBeg,sourceEnd,destBeg)中的源区间[sourceBeg,sourceEnd)内的元素复制到"以destBeg起始的目标区间",并在复制过程中颠倒顺序;


#include
#include
#include
using namespace std;
int main()
{
	int a[50];
	int b[50]; 
	for(int i=0;i<10;i++)
	{
		a[i]=i;
		cout<

你可能感兴趣的:(C++:string erase函数与reverse函数)