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

📄 ck_array.h

📁 一个不错
💻 H
📖 第 1 页 / 共 2 页
字号:
  size_t cap( (tmp._capacity()<<1)+1 );  for(size_t i=0; i<cap; ++i) {    tmp.push_back(EleType());  }  if(tmp.size()!=cap) {    WY_THROW( WyRet() );  }  while(tmp.size()) {    tmp.pop_back();  };  if(tmp.is_default()==false) {    WY_THROW( WyRet() );  } } // chk erase(size_t,size_t) {  Wy_Array<EleType> tmp;  WY__CK_ARRAY_CHK_DEFAULT(tmp);  tmp.erase(0,1);  WY__CK_ARRAY_CHK_DEFAULT(tmp);  size_t cap( (tmp._capacity()<<1)+1 );  for(size_t i=0; i<cap; ++i) {    tmp.push_back( EleType() );  }  if(tmp.size()!=cap) {    WY_THROW( WyRet() );  }  size_t rsize=tmp.size();  tmp.erase(tmp.size(),100);  if(tmp.size()!=rsize) {    WY_THROW( WyRet() );  }  tmp.erase(tmp.size()-1,0);  if(tmp.size()!=rsize) {    WY_THROW( WyRet() );  }  tmp.erase(0,tmp.size());  if(tmp.size()!=0) {    WY_THROW( WyRet() );  }  rsize=tmp.size();  try {    tmp.erase(tmp.size()+1,1);    WY_THROW( WyRet() );  }  catch(const typename Wy_Array<EleType>::Reply& e) {    if(e!=Wym_EINVAL) {      WY_THROW( WyRet() );    }  };  if(tmp.size()!=rsize) {    WY_THROW( WyRet() );  } } // chk erase(size_t, BigNum) {   Wy_Array<EleType> tmp;   WY__CK_ARRAY_CHK_DEFAULT(tmp);   tmp.resize(4);   if(tmp.size()!=4) {     WY_THROW( WyRet() );   }   Wy_Array<EleType> tmp_cpy(tmp);   if(tmp!=tmp_cpy) {     WY_THROW( WyRet() );   }   try {     tmp.erase(tmp.size()+1,999);     WY_THROW( WyRet() );   }   catch(const typename Wy_Array<EleType>::Reply& e) {     if(tmp!=tmp_cpy) {       WY_THROW( WyRet() );     }     if(e!=Wym_EINVAL) {       WY_THROW( WyRet(e) );     }   }   catch(...) {     WY_THROW( WyRet() );   };   tmp.erase(tmp.size(),999);   if(tmp!=tmp_cpy) {     WY_THROW( WyRet() );   }   tmp.erase(tmp_cpy.size()-1,999);   if(tmp.size()!=tmp_cpy.size()-1) {     WY_THROW( WyRet() );   }   tmp.erase(0,999);   if(tmp.size()!=0) {     WY_THROW( WyRet() );   } } // chk insert(size_t, const EleType&) {  Wy_Array<EleType> tmp;  WY__CK_ARRAY_CHK_DEFAULT(tmp);  tmp.insert(0,EleType());  if(tmp.size()!=1) {    WY_THROW( WyRet() );  }  tmp.insert(0,EleType());  if(tmp.size()!=2) {    WY_THROW( WyRet() );  }  tmp.insert(0,EleType());  if(tmp.size()!=3) {    WY_THROW( WyRet() );  }  tmp.insert(1,EleType());  if(tmp.size()!=4) {    WY_THROW( WyRet() );  }  tmp.insert(tmp.size()-1,EleType());  if(tmp.size()!=5) {    WY_THROW( WyRet() );  }  tmp.insert(tmp.size(),EleType());  if(tmp.size()!=6) {    WY_THROW( WyRet() );  }  try {    tmp.insert(tmp.size()+1,EleType());    WY_THROW( WyRet() );  }  catch(const typename Wy_Array<EleType>::Reply& e) {    if(e!=Wym_EINVAL) {      WY_THROW( WyRet() );    }  };  if(tmp.size()!=6) {    WY_THROW( WyRet() );  } } // chk insert(size_t,size_t,const EleType&) {   Wy_Array<EleType> tmp;   WY__CK_ARRAY_CHK_DEFAULT(tmp);   tmp.insert(0,0,EleType());   WY__CK_ARRAY_CHK_DEFAULT(tmp);   tmp.insert(0,1,EleType());   if(tmp.size()!=1) {     WY_THROW( WyRet() );   }   tmp.insert(0,2,EleType());   if(tmp.size()!=3) {     WY_THROW( WyRet() );   }   tmp.insert(1,2,EleType());   if(tmp.size()!=5) {     WY_THROW( WyRet() );   }   tmp.insert(tmp.size(),2,EleType());   if(tmp.size()!=7) {     WY_THROW( WyRet() );   }   try {     tmp.insert(tmp.size()+1,0,EleType());     WY_THROW( WyRet() );   }   catch(const typename Wy_Array<EleType>::Reply& e) {     if(e!=Wym_EINVAL) {       WY_THROW( WyRet(e) );     }   };   try {     tmp.insert(tmp.size(),tmp.max_capacity()+1,EleType());     WY_THROW( WyRet() );   }   catch(const typename Wy_Array<EleType>::Reply& e) {     if(e!=Wym_EFBIG) {       WY_THROW( WyRet(e) );     }   }; } // chk insert(size_t,const WySeg<EleType>&) {   EleType arr[2]={};   WySeg<EleType> segarr(arr,sizeof(arr)/sizeof(EleType));   Wy_Array<EleType> tmp;   WY__CK_ARRAY_CHK_DEFAULT(tmp);   tmp.insert(0,segarr);   if(tmp.size()!=segarr.size()) {     WY_THROW( WyRet() );   }   tmp.insert(1,segarr);   if(tmp.size()!=2*segarr.size()) {     WY_THROW( WyRet() );   }   tmp.insert(tmp.size(),segarr);   if(tmp.size()!=3*segarr.size()) {     WY_THROW( WyRet() );   }   Wy_Array<EleType> tmp2(tmp);   if(tmp!=tmp2) {     WY_THROW( WyRet() );   }   try {     tmp.insert(tmp.size()+1,segarr);     WY_THROW( WyRet() );   }   catch(const typename Wy_Array<EleType>::Reply& e) {     if(tmp!=tmp2) {       WY_THROW( WyRet() );     }     if(e!=Wym_EINVAL) {       WY_THROW( WyRet(e) );     }   }   catch(...) {     WY_THROW( WyRet() );   };   if(tmp!=tmp2) {     WY_THROW( WyRet() );   }   try {     tmp.insert(1,tmp.subseg());     WY_THROW( WyRet() );   }   catch(const typename Wy_Array<EleType>::Reply& e) {     if(tmp!=tmp2) {       WY_THROW( WyRet() );     }     if(e!=Wym_ELOOP) {       WY_THROW( WyRet(e) );     }   }   catch(...) {     WY_THROW( WyRet() );   };   if(tmp!=tmp2) {     WY_THROW( WyRet() );   }   for(int i=0; i<100; ++i) {     tmp2._reserve(tmp2.size()+segarr.size());     tmp.insert(tmp.size()>>1,segarr);     tmp2.insert(tmp2.size()>>1,segarr);     if(tmp!=tmp2) {       WY_THROW( WyRet() );     }     if(tmp._capacity()>(tmp.size()<<1)) {       WY_THROW( WyRet() );     }     if(tmp2._capacity()>(tmp2.size()<<1)) {       WY_THROW( WyRet() );     }   } } // chk insert(size_t,const Wy_Array&) {   Wy_Array<EleType> tmp;   WY__CK_ARRAY_CHK_DEFAULT(tmp);   Wy_Array<EleType> tmp2;   tmp2.resize(2);   tmp.insert(0,tmp2);   if(tmp.size()!=tmp2.size()) {     WY_THROW( WyRet() );   }   tmp.insert(1,tmp2);   if(tmp.size()!=2*tmp2.size()) {     WY_THROW( WyRet() );   }   tmp.insert(tmp.size(),tmp2);   if(tmp.size()!=3*tmp2.size()) {     WY_THROW( WyRet() );   }   tmp2.reset(tmp);   if(tmp!=tmp2) {     WY_THROW( WyRet() );   }   try {     tmp.insert(tmp.size()+1,tmp2);     WY_THROW( WyRet() );   }   catch(const typename Wy_Array<EleType>::Reply& e) {     if(tmp!=tmp2) {       WY_THROW( WyRet() );     }     if(e!=Wym_EINVAL) {       WY_THROW( WyRet(e) );     }   }   catch(...) {     WY_THROW( WyRet() );   };   if(tmp!=tmp2) {     WY_THROW( WyRet() );   }   try {     tmp.insert(1,tmp);     WY_THROW( WyRet() );   }   catch(const typename Wy_Array<EleType>::Reply& e) {     if(tmp!=tmp2) {       WY_THROW( WyRet() );     }     if(e!=Wym_ELOOP) {       WY_THROW( WyRet(e) );     }   }   catch(...) {     WY_THROW( WyRet() );   };   if(tmp!=tmp2) {     WY_THROW( WyRet() );   }   Wy_Array<EleType> tmp3;   tmp3.resize(2);   for(int i=0; i<100; ++i) {     tmp2._reserve(tmp2.size()+tmp3.size());     tmp.insert(tmp.size()>>1,tmp3);     tmp2.insert(tmp2.size()>>1,tmp3);     if(tmp!=tmp2) {       WY_THROW( WyRet() );     }     if(tmp._capacity()>(tmp.size()<<1)) {       WY_THROW( WyRet() );     }     if(tmp2._capacity()>(tmp2.size()<<1)) {       WY_THROW( WyRet() );     }   } } // chk replace {  Wy_Array<EleType> tmp;  WY__CK_ARRAY_CHK_DEFAULT(tmp);  tmp.replace(0,1,0,EleType());  WY__CK_ARRAY_CHK_DEFAULT(tmp);  tmp.replace(0,1,2,EleType());  if(tmp.size()!=2) {    WY_THROW( WyRet() );  }  tmp.replace(1,1,2,EleType());  if(tmp.size()!=3) {    WY_THROW( WyRet() );  }  tmp.replace(3,1,2,EleType());  if(tmp.size()!=5) {    WY_THROW( WyRet() );  }  tmp.replace(1,5,2,EleType());  if(tmp.size()!=3) {    WY_THROW( WyRet() );  }  tmp.replace(0,5,0,EleType());  if(tmp.size()!=0) {    WY_THROW( WyRet() );  } } // chk resize(size_t) {  Wy_Array<EleType> tmp;  WY__CK_ARRAY_CHK_DEFAULT(tmp);  tmp.resize(0);  WY__CK_ARRAY_CHK_DEFAULT(tmp);  tmp.resize(1);  if(tmp.size()!=1) {    WY_THROW( WyRet() );  }  tmp.resize(2);  if(tmp.size()!=2) {    WY_THROW( WyRet() );  }  tmp.resize(100);  if(tmp.size()!=100) {    WY_THROW( WyRet() );  }  tmp.resize(90);  if(tmp.size()!=90) {    WY_THROW( WyRet() );  }  try {    tmp.resize(tmp.max_capacity()+1);    WY_THROW( WyRet() );  }  catch(const typename Wy_Array<EleType>::Reply& e) {    if(e!=Wym_EFBIG) {      WY_THROW( WyRet() );    }  };  if(tmp.size()!=90) {    WY_THROW( WyRet() );  }  tmp.resize(1);  if(tmp.size()!=1) {    WY_THROW( WyRet() );  }  tmp.resize(0);  if(tmp.size()!=0) {    WY_THROW( WyRet() );  }  WY__CK_ARRAY_CHK_DEFAULT(tmp); } // chk resize(size_t,const EleType&) {  Wy_Array<EleType> tmp;  WY__CK_ARRAY_CHK_DEFAULT(tmp);  tmp.resize(0,EleType());  WY__CK_ARRAY_CHK_DEFAULT(tmp);  tmp.resize(1,EleType());  if(tmp.size()!=1) {    WY_THROW( WyRet() );  }  tmp.resize(2,EleType());  if(tmp.size()!=2) {    WY_THROW( WyRet() );  }  tmp.resize(100,EleType());  if(tmp.size()!=100) {    WY_THROW( WyRet() );  }  tmp.resize(90,EleType());  if(tmp.size()!=90) {    WY_THROW( WyRet() );  }  try {    tmp.resize(tmp.max_capacity()+1,EleType());    WY_THROW( WyRet() );  }  catch(const typename Wy_Array<EleType>::Reply& e) {    if(e!=Wym_EFBIG) {      WY_THROW( WyRet() );    }  };  if(tmp.size()!=90) {    WY_THROW( WyRet() );  }  tmp.resize(1,EleType());  if(tmp.size()!=1) {    WY_THROW( WyRet() );  }  tmp.resize(0,EleType());  if(tmp.size()!=0) {    WY_THROW( WyRet() );  }  WY__CK_ARRAY_CHK_DEFAULT(tmp); }};#endif

⌨️ 快捷键说明

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