“if语句中的条件表达式可以是任何算术表达式”中的算术表达式指的是基本类型组成的表达式么?
本帖最后由 shendaowu 于 2013-07-03 19:09:18 编辑 书上的原话:
这也意味着任何算术或者指针表达式都可以用做条件。
还是说算术表达式本来就是应该由基本类型组成的?
但是我写的这段代码报错了:
#include <iostream>
using namespace std;
class cond
{
int i;
public:
cond( int );
cond& operator +=( cond a ) //顺便问一下这个怎么像构造函数一样定义到类定义的外面。
{
i += a.i;
return *this;
}
};
cond::cond( int a )
{
i = a;
}
cond operator +( cond a, cond b )
{
cond c = a;
return c += b;
}
int main()
{
cond test1( 3 );
cond test2( 4 );
if( test1 + test2 ); //这里报错。
return 0;
}