2013-07-17 73 views

回答

1

假設您不希望將對象指針與空指針進行比較,這是微不足道的;是的,你可以提出這樣的條件。

但是,你需要overload平等操作==相關MyClass

class MyClass 
{ 
    public: 
     MyClass() 
     { 
      someMember = 0; // let this be null object condition 
     } 
     MyClass(int member) 
     { 
      someMember = member; 
     } 
     bool operator == (const MyClass &Ref) const 
     { 
      return(this->someMember== Ref.GetMember()); 
     } 

     const int GetMember() const 
     { 
      return(this->someMember); 
     } 

    private: 
     int someMember; 
}; 

#define NULL_OBJ MyClass() 

通過#define NULL_OBJ MyClass(),你可以定義一個空對象,並把它比任何MyClass對象。

(與reference

0

你可以把對象的地址和比較正常。