⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ck_str.cpp

📁 一个不错
💻 CPP
📖 第 1 页 / 共 5 页
字号:
  if(tmp1!="1") {    WY_THROW(WyRet() );  }  if((r=tmp1.erase(0))!=Ok) {    WY_THROW(r);  }  if(tmp1!="") {    WY_THROW(WyRet() );  }  CHK_DEFAULT(tmp1); } // erase(size_t,size_t) {  WyStr tmp;  CHK_DEFAULT(tmp);    if((r=tmp.erase(0,0))!=Ok) {    WY_THROW(r);  }  if((r=tmp.erase(0,1))!=Ok) {    WY_THROW(r);  }  CHK_DEFAULT(tmp);  WyStr tmp0("1234567");  WyStr tmp1(tmp0);  if((r=tmp1.erase(tmp1.size(),1))!=Ok) {    WY_THROW(r);  }  if(tmp0!=tmp1) {    WY_THROW(WyRet() );  }  if((r=tmp1.erase(3,1))!=Ok) {    WY_THROW(r);  }  if(tmp1!="123567") {    WY_THROW(WyRet() );  }  if((r=tmp1.erase(5,1))!=Ok) {    WY_THROW(r);  }  if(tmp1!="12356") {    WY_THROW(WyRet() );  }  if((r=tmp1.erase(0,3))!=Ok) {    WY_THROW(r);  }  if(tmp1!="56") {    WY_THROW(WyRet() );  }  if((r=tmp1.erase(0,10))!=Ok) {    WY_THROW(r);  }  CHK_DEFAULT(tmp1); } // resize {  WyStr tmp;  if((r=tmp.resize(0))!=Ok) {    WY_THROW(WyRet() );  }  CHK_DEFAULT(tmp);  if((r=tmp.resize(7))!=Ok) {    WY_THROW(WyRet() );  }  {   const char ca[8]={char(),char(),char(),char(),char(),char(),char(),0};   if(tmp.size()!=7) {     WY_THROW(WyRet() );   }   if((std::memcmp(tmp.data(),ca,sizeof(ca)))!=0) {     WY_THROW(WyRet() );   }  }  if((r=tmp.resize(2,'c'))!=Ok) {    WY_THROW(WyRet() );  }  if(tmp.size()!=2) {    WY_THROW(WyRet() );  }  if((tmp[0]!=char())||(tmp[1]!=char())||(tmp[2]!=0)) {    WY_THROW(WyRet() );  }  if((r=tmp.resize(3,'c'))!=Ok) {    WY_THROW(WyRet() );  }  if(tmp.size()!=3) {    WY_THROW(WyRet() );  }  if(tmp[2]!='c') {    WY_THROW(WyRet() );  }  r=tmp.resize(tmp._capacity()+2000);  if(r!=Ok) {    WY_THROW(r);  }  while(tmp.size()) {    r=tmp.resize(tmp.size()-1);    if(r!=Ok) {      // shrink by resize never cause error      WY_THROW(r);    }  }  CHK_DEFAULT(tmp);  if(tmp!="") {    WY_THROW( WyRet() );  } } // replace(size_t,size_t,const WyStr&) {  WyStr tmp;  if((r=tmp.replace(0,4,WyStr()))!=Ok) {    WY_THROW(r);  }  CHK_DEFAULT(tmp);  if((r=tmp.replace(0,4,WyStr("abc")))!=Ok) {    WY_THROW(r);  }  if(tmp!="abc") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(1,1,WyStr("")))!=Ok) {    WY_THROW(r);  }  if(tmp!="ac") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(2,2,WyStr("")))!=Ok) {    WY_THROW(r);  }  if(tmp!="ac") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(1,0,WyStr("x")))!=Ok) {    WY_THROW(r);  }  if(tmp!="axc") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(0,3,WyStr("")))!=Ok) {    WY_THROW(r);  }  if(tmp!="") {    WY_THROW(WyRet() );  }  // AUX: operator + (char,const WyStr&)  {    const WyStr Tmp("gh");    if((Tmp+'f')!="ghf") {      WY_THROW(WyRet() );    }    if(('f'+Tmp)!="fgh") {      WY_THROW(WyRet() );    }  }/* self-operate  {   WyStr a("abcde");   if((r=a.replace(2,1,a))!=Ok) {     WY_THROW(r);   }   if(a!="ababcdede") {    WY_THROW(WyRet() );  }  }*/  const WyStr Temp("1234567");  tmp.reset(Temp);  if(tmp!=Temp) {    WY_THROW(WyRet() );  }  if((r=tmp.replace(1,2,WyStr("ab")))!=Ok) {    WY_THROW(r);  }  if(tmp!="1ab4567") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(5,3,WyStr("xy")))!=Ok) {    WY_THROW(r);  }  if(tmp!="1ab45xy") {    WY_THROW(WyRet() );  }  {   size_t bufsiz;   tmp.reset(Temp);   if(tmp!=Temp) {     WY_THROW(WyRet() );   }   bufsiz=tmp._capacity();   WyStr rstr(size_t(bufsiz+1),char('x'));   if((r=tmp.replace(3,1, WyCSeg(rstr.data(),rstr.size())))!=Ok) {    WY_THROW(r);   }   if(tmp.size()!=rstr.size()+6) {     WY_THROW(WyRet() );   }   if((tmp[0]!='1')||(tmp[1]!='2')||(tmp[2]!='3')) {     WY_THROW(WyRet() );   }   size_t t2=tmp.size()-3;   for(size_t i=3; i<t2; ++i) {     if(tmp[i]!='x') {       WY_THROW(WyRet() );     }   }   if((tmp[t2+0]!='5')||(tmp[t2+1]!='6')||(tmp[t2+2]!='7')) {     WY_THROW(WyRet() );   }  }  {   size_t bufsiz;   tmp.reset(Temp);   if(tmp!=Temp) {     WY_THROW(WyRet() );   }   bufsiz=tmp._capacity();   WyStr rstr(size_t(bufsiz+1),char('x'));   if((r=tmp.replace(3,100,rstr))!=Ok) {    WY_THROW(r);   }   if(tmp.size()!=rstr.size()+3) {     WY_THROW(WyRet() );   }   if((tmp[0]!='1')||(tmp[1]!='2')||(tmp[2]!='3')) {     WY_THROW(WyRet() );   }   for(size_t i=3; i<tmp.size(); ++i) {     if(tmp[i]!='x') {       WY_THROW(WyRet() );     }   }   if(tmp[tmp.size()]!=0) {     WY_THROW(WyRet() );   }  } } // replace(size_t,size_t,const WyStr&,size_t) {  WyStr tmp;  const WyStr S_empty;  if((r=tmp.replace(0,4,S_empty.cseg(0)))!=Ok) {    WY_THROW(r);  }  CHK_DEFAULT(tmp);  const WyStr S_labc("labc");  if((r=tmp.replace(0,4,S_labc.cseg(1)))!=Ok) {    WY_THROW(r);  }  if(tmp!="abc") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(1,1,S_empty.cseg(0)))!=Ok) {    WY_THROW(r);  }  if(tmp!="ac") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(2,2,S_empty.cseg(0,0)))!=Ok) {    WY_THROW(r);  }  if(tmp!="ac") {    WY_THROW(WyRet() );  }  WyStr S_x("x");  if((r=tmp.replace(1,0,S_x.cseg(0)))!=Ok) {    WY_THROW(r);  }  if(tmp!="axc") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(0,3,S_empty.cseg(0)))!=Ok) {    WY_THROW(r);  }  if(tmp!="") {    WY_THROW(WyRet() );  }/* self-operate  {   WyStr a("abcde");   if((r=a.replace(2,1,a,0))!=Ok) {     WY_THROW(r);   }   if(a!="ababcdede") {    WY_THROW(WyRet() );  }  }*/  const WyStr Temp("1234567");  tmp.reset(Temp);  if(tmp!=Temp) {    WY_THROW(WyRet() );  }  WyStr S_xab("xab");  WyStr S_xy("xy");  if((r=tmp.replace(1,2,S_xab.cseg(1)))!=Ok) {    WY_THROW(r);  }  if(tmp!="1ab4567") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(5,3,S_xy.cseg(0)))!=Ok) {    WY_THROW(r);  }  if(tmp!="1ab45xy") {    WY_THROW(WyRet() );  } } // replace(size_t,size_t,const WyStr&,size_t,size_t) {  WyStr tmp;  const WyStr S_empty, S_labcd("labcd"), S_xx("xx"), S_x("x");  if((r=tmp.replace(0,4,S_empty.cseg(0,0)))!=Ok) {    WY_THROW(r);  }  CHK_DEFAULT(tmp);  if((r=tmp.replace(0,4,S_labcd.cseg(1,3)))!=Ok) {    WY_THROW(r);  }  if(tmp!="abc") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(1,1,S_xx.cseg(1,0)))!=Ok) {    WY_THROW(r);  }  if(tmp!="ac") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(2,2,S_empty.cseg(0,0)))!=Ok) {    WY_THROW(r);  }  if(tmp!="ac") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(1,0,S_x.cseg(0,2)))!=Ok) {    WY_THROW(r);  }  if(tmp!="axc") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(0,3,S_empty.cseg(0,1)))!=Ok) {    WY_THROW(r);  }  if(tmp!="") {    WY_THROW(WyRet() );  }/* self-operate  {   WyStr a("abcde");   if((r=a.replace(2,1,a,0,a.size()))!=Ok) {     WY_THROW(r);   }   if(a!="ababcdede") {    WY_THROW(WyRet() );  }  }*/  const WyStr Temp("1234567");  tmp.reset(Temp);  if(tmp!=Temp) {    WY_THROW(WyRet() );  }  WyStr S_xabx("xabx"),S_xy("xy");  if((r=tmp.replace(1,2,S_xabx.cseg(1,2)))!=Ok) {    WY_THROW(r);  }  if(tmp!="1ab4567") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(5,3,S_xy.cseg(0,2)))!=Ok) {    WY_THROW(r);  }  if(tmp!="1ab45xy") {    WY_THROW(WyRet() );  }  {   size_t bufsiz;   tmp.reset(Temp);   if(tmp!=Temp) {     WY_THROW(WyRet() );   }   bufsiz=tmp._capacity();   WyStr rstr(size_t(bufsiz+1),char('x'));   if((r=tmp.replace(3,1,rstr.cseg(0,rstr.size())))!=Ok) {    WY_THROW(r);   }   if(tmp.size()!=rstr.size()+6) {     WY_THROW(WyRet() );   }   if((tmp[0]!='1')||(tmp[1]!='2')||(tmp[2]!='3')) {     WY_THROW(WyRet() );   }   size_t t2=tmp.size()-3;   for(size_t i=3; i<t2; ++i) {     if(tmp[i]!='x') {       WY_THROW(WyRet() );     }   }   if((tmp[t2+0]!='5')||(tmp[t2+1]!='6')||(tmp[t2+2]!='7')) {     WY_THROW(WyRet() );   }  }  {   size_t bufsiz;   tmp.reset(Temp);   if(tmp!=Temp) {     WY_THROW(WyRet() );   }   bufsiz=tmp._capacity();   WyStr rstr(size_t(bufsiz+1),char('x'));   if((r=tmp.replace(3,100,rstr.cseg(0,rstr.size())))!=Ok) {    WY_THROW(r);   }   if(tmp.size()!=rstr.size()+3) {     WY_THROW(WyRet() );   }   if((tmp[0]!='1')||(tmp[1]!='2')||(tmp[2]!='3')) {     WY_THROW(WyRet() );   }   for(size_t i=3; i<tmp.size(); ++i) {     if(tmp[i]!='x') {       WY_THROW(WyRet() );     }   }   if(tmp[tmp.size()]!=0) {     WY_THROW(WyRet() );   }  } } // replace(size_t,size_t,const char*,size_t) {  WyStr tmp;  if((r=tmp.replace(0,4, WyCSeg("a",size_t(0))))!=Ok) {    WY_THROW(r);  }  CHK_DEFAULT(tmp);  if((r=tmp.replace(0,4, WyCSeg("abc",3)))!=Ok) {    WY_THROW(r);  }  if(tmp!="abc") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(1,1, WyCSeg("",size_t(0))))!=Ok) {    WY_THROW(r);  }  if(tmp!="ac") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(2,2, WyCSeg("x",size_t(0))))!=Ok) {    WY_THROW(r);  }  if(tmp!="ac") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(1,0, WyCSeg("x",size_t(1))))!=Ok) {    WY_THROW(r);  }  if(tmp!="axc") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(0,3, WyCSeg("x",size_t(0))))!=Ok) {    WY_THROW(r);  }  if(tmp!="") {    WY_THROW(WyRet() );  }/* self-operate  {   WyStr a("abcde");   if((r=a.replace(2,1, WyCSeg(a.data(),a.size())))!=Ok) {     WY_THROW(r);   }   if(a!="ababcdede") {    WY_THROW(WyRet() );  }  }*/  const WyStr Temp("1234567");  tmp.reset(Temp);  if(tmp!=Temp) {    WY_THROW(WyRet() );  }  if((r=tmp.replace(1,2, WyCSeg("ab",2)))!=Ok) {    WY_THROW(r);  }  if(tmp!="1ab4567") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(5,3, WyCSeg("xy",2)))!=Ok) {    WY_THROW(r);  }  if(tmp!="1ab45xy") {    WY_THROW(WyRet() );  }  {   size_t bufsiz;   tmp.reset(Temp);   if(tmp!=Temp) {     WY_THROW(WyRet() );   }   bufsiz=tmp._capacity();   WyStr rstr(size_t(bufsiz+1),char('x'));   if((r=tmp.replace(3,1, WyCSeg(rstr.data(),rstr.size())))!=Ok) {    WY_THROW(r);   }   if(tmp.size()!=rstr.size()+6) {     WY_THROW(WyRet() );   }   if((tmp[0]!='1')||(tmp[1]!='2')||(tmp[2]!='3')) {     WY_THROW(WyRet() );   }   size_t t2=tmp.size()-3;   for(size_t i=3; i<t2; ++i) {     if(tmp[i]!='x') {       WY_THROW(WyRet() );     }   }   if((tmp[t2+0]!='5')||(tmp[t2+1]!='6')||(tmp[t2+2]!='7')) {     WY_THROW(WyRet() );   }  }  {   size_t bufsiz;   tmp.reset(Temp);   if(tmp!=Temp) {     WY_THROW(WyRet() );   }   bufsiz=tmp._capacity();   WyStr rstr(size_t(bufsiz+1),char('x'));   if((r=tmp.replace(3,100, WyCSeg(rstr.data(),rstr.size())))!=Ok) {    WY_THROW(r);   }   if(tmp.size()!=rstr.size()+3) {     WY_THROW(WyRet() );   }   if((tmp[0]!='1')||(tmp[1]!='2')||(tmp[2]!='3')) {     WY_THROW(WyRet() );   }   for(size_t i=3; i<tmp.size(); ++i) {     if(tmp[i]!='x') {       WY_THROW(WyRet() );     }   }   if(tmp[tmp.size()]!=0) {     WY_THROW(WyRet() );   }  } } // replace(size_t,size_t,const char*) {  WyStr tmp;  CHK_DEFAULT(tmp);  if((r=tmp.replace(0,4,"abc"))!=Ok) {    WY_THROW(r);  }  if(tmp!="abc") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(1,0,"x"))!=Ok) {    WY_THROW(r);  }  if(tmp!="axbc") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(1,1,"x"))!=Ok) {    WY_THROW(r);  }  if(tmp!="axbc") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(0,3,""))!=Ok) {    WY_THROW(r);  }  if(tmp!="c") {    WY_THROW(WyRet() );  }/* self-operate  {   WyStr a("abcde");   if((r=a.replace(2,1,a.c_str()))!=Ok) {     WY_THROW(r);   }   if(a!="ababcdede") {    WY_THROW(WyRet() );   }  }*/  const WyStr Temp("1234567");  tmp.reset(Temp);  if(tmp!=Temp) {    WY_THROW(WyRet() );  }  if((r=tmp.replace(1,2,"ab"))!=Ok) {    WY_THROW(r);  }  if(tmp!="1ab4567") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(5,3,"xy"))!=Ok) {    WY_THROW(r);  }  if(tmp!="1ab45xy") {    WY_THROW(WyRet() );  } } // replace(size_t,size_t,size_t,ch) {  WyStr tmp;  if((r=tmp.replace(0,4,0,'x'))!=Ok) {    WY_THROW(r);  }  CHK_DEFAULT(tmp);  if((r=tmp.replace(0,4,3,'a'))!=Ok) {    WY_THROW(r);  }  if(tmp!="aaa") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(1,1,0,'b'))!=Ok) {    WY_THROW(r);  }  if(tmp!="aa") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(2,2,0,'x'))!=Ok) {    WY_THROW(r);  }  if(tmp!="aa") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(1,0,1,'x'))!=Ok) {    WY_THROW(r);  }  if(tmp!="axa") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(0,3,0,'t'))!=Ok) {    WY_THROW(r);  }  if(tmp!="") {    WY_THROW(WyRet() );  }  const WyStr Temp("1234567");  tmp.reset(Temp);  if(tmp!=Temp) {    WY_THROW(WyRet() );  }  if((r=tmp.replace(1,2,2,'b'))!=Ok) {    WY_THROW(r);  }  if(tmp!="1bb4567") {    WY_THROW(WyRet() );  }  if((r=tmp.replace(5,3,2,'y'))!=Ok) {    WY_THROW(r);  }  if(tmp!="1bb45yy") {    WY_THROW(WyRet() );  } } // copyto(char*,size_t,size_t&,size_t) {  WyStr tmp;  char buf[8];  size_t res;  buf[0]='x';  if((r=tmp.copyto(&res,buf,sizeof(buf),0))!=Ok) {    WY_THROW(r);  }  if(res!=0) {    WY_THROW(WyRet() );  }  if(buf[0]!='x') {    WY_THROW(WyRet() );  }  WyStr tmp2("abcde");  buf[0]='x';  if((r=tmp2.copyto(&res,buf,sizeof(buf),3))!=Ok) {    WY_THROW(r);  }  if(res!=2) {    WY_THROW(WyRet() );  }  if((buf[0]!='d')||(buf[1]!='e')) {    WY_THROW(WyRet() );  }  if((r=tmp2.copyto(0,buf,1,1))!=Ok) {    WY_THROW(r);  }  if(buf[0]!='b') {    WY_THROW(WyRet() );  } } // _reserve

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -