|
정진우 님이 쓰신 글 :
: int a = 1;
: if ( a ) cout << "true";
:
: 위 코드처럼 연산하 오버로딩을 통해서 클래스자체가 식의 값을 가지게 하려면 어떻게하나요?
: if ( !a ) cout << "false"; 이렇게 하려면 bool operator!() 연산자를 정의하면 되는데
: 그 반대는 어떻게해야하는지 모르겠습니다.
class Test
{
String Str;
public:
Test(const String& st):Str(st){}
bool operator !() const
{
return (Str.IsEmpty());
}
operator bool() const
{
return (!Str.IsEmpty());
}
};
|