template <typename T, typenameL>
int compare( const T& strA, constL& strB )
{
stringstr_A(strA), str_B(strB);
//用C风格的数组构造string对象
try
{
if( str_A > str_B )
return 1;
else if ( str_A == str_B )
return 0;
else
return -1;
}
catch(exception ex)
{
cout << "compareexception!" << endl;
}
return 0;
}
如果省略最后那个返回语句,则在“出现异常跳过条件判断则无返回,使catch块代码执行单其没有返回语句”
种情况下会没有返回值,故会出现warning C4715: 'compare' : not all control pathsreturn a value错误。所以最后一个返回语句不能省。
int compare( const T& strA, constL& strB )
{
}
如果省略最后那个返回语句,则在“出现异常跳过条件判断则无返回,使catch块代码执行单其没有返回语句”
种情况下会没有返回值,故会出现warning C4715: 'compare' : not all control pathsreturn a value错误。所以最后一个返回语句不能省。