|
|

楼主 |
发表于 2007-5-26 21:42:00
|
显示全部楼层
Re:如何用好find_if() ,以及 operator
我要用 find_if() ,第三个参数是一个函数指针,于是写了一个 bool 函数,作为_Pred,该函数的参数类型是容器内数据的类型,但为啥老说有错呢。一定要写成 operator 的样式?这个理解不了,怎么写 operator 函数呢……
以下是我自己写的,比较烂啊 [em10]
vecTemp 是一个私有容器 vector<string>
- void CVerCount01::wipe_off_num() //作用是把由全数字组成的字符串去掉
- {
- vector<string> vec;
- while( itr = find_if( vecTemp.begin(), vecTemp.end() , CVerCount01::is_all_num ) != vecTemp.end() )
- vec.push_back( *itr );
- vecTemp.clear();
- copy( vec.begin(), vec.end() , back_inserter( vecTemp ) );
- }
- bool CVerCount01::isnt_all_num( const string value )
- {
- for( int i = 0 ; value[i] != '\0' ; ++i)
- if( value[i] < '0'|| value[i] > '9' )
- return true;
- return false;
- }
复制代码 |
|