C++ Builder 參考手冊(cè) ? System ? TObject ? Equals
頭文件:#include <systobj.h>
命名空間:System
函數(shù)原型:
virtual bool __fastcall Equals(TObject *Obj);
System::TObject::Equals 是 System::TObject 的成員函數(shù),比較當(dāng)前對(duì)象和 Obj 對(duì)象是否相同。從 TObject 繼承的子類如果需要判斷相同毕泌,需要重載 Equals 來(lái)提供比較的方法纲缓。
參數(shù):
Obj:需要和當(dāng)前對(duì)象比較的對(duì)象
返回值:
true:當(dāng)前對(duì)象和 Obj 相同
false:當(dāng)前對(duì)象和 Obj 不同
例:比較 TStringList 里面的文字和 Memo1 里面的文字是否相同
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Memo1->Lines->Clear();
Memo1->Lines->Add(L"Equals 方法測(cè)試程序");
Memo1->Lines->Add(L"玄坴 Hsuanlu");
TStringList *sl1 = new TStringList;
sl1->Text = L"Equals 方法測(cè)試程序\r\n玄坴 Hsuanlu";
TStringList *sl2 = new TStringList;
sl2->Text = L"測(cè)試程序 -- 玄坴";
UnicodeString s;
if(Memo1->Lines->Equals(sl1))
s += L"Memo1 和 sl1 的內(nèi)容相同\r\n";
else
s += L"Memo1 和 sl1 的內(nèi)容不同\r\n";
if(Memo1->Lines->Equals(sl2))
s += L"Memo1 和 sl2 的內(nèi)容相同\r\n";
else
s += L"Memo1 和 sl2 的內(nèi)容不同\r\n";
if(sl1->Equals(sl2))
s += L"sl1 和 sl2 的內(nèi)容相同";
else
s += L"sl1 和 sl2 的內(nèi)容不同";
ShowMessage(s);
delete sl2;
delete sl1;
}
運(yùn)行結(jié)果:
參考:
- System::Classes::TPersistent::Assign
- System::Classes::TPersistent::AssignTo
- System::TObject
- VCL 類繼承關(guān)系
C++ Builder 參考手冊(cè) ? System ? TObject ? Equals