C++ Builder 参考手册 ➙ System ➙ TObject ➙ Equals
头文件:#include <systobj.h>
命名空间:System
函数原型:
virtual bool __fastcall Equals(TObject *Obj);
System::TObject::Equals 是 System::TObject 的成员函数,比较当前对象和 Obj 对象是否相同。从 TObject 继承的子类如果需要判断相同,需要重载 Equals 来提供比较的方法。
参数:
Obj:需要和当前对象比较的对象
返回值:
true:当前对象和 Obj 相同
false:当前对象和 Obj 不同
例:比较 TStringList 里面的文字和 Memo1 里面的文字是否相同
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Memo1->Lines->Clear();
Memo1->Lines->Add(L"Equals 方法测试程序");
Memo1->Lines->Add(L"玄坴 Hsuanlu");
TStringList *sl1 = new TStringList;
sl1->Text = L"Equals 方法测试程序\r\n玄坴 Hsuanlu";
TStringList *sl2 = new TStringList;
sl2->Text = L"测试程序 -- 玄坴";
UnicodeString s;
if(Memo1->Lines->Equals(sl1))
s += L"Memo1 和 sl1 的内容相同\r\n";
else
s += L"Memo1 和 sl1 的内容不同\r\n";
if(Memo1->Lines->Equals(sl2))
s += L"Memo1 和 sl2 的内容相同\r\n";
else
s += L"Memo1 和 sl2 的内容不同\r\n";
if(sl1->Equals(sl2))
s += L"sl1 和 sl2 的内容相同";
else
s += L"sl1 和 sl2 的内容不同";
ShowMessage(s);
delete sl2;
delete sl1;
}
运行结果:
参考:
- System::Classes::TPersistent::Assign
- System::Classes::TPersistent::AssignTo
- System::TObject
- VCL 类继承关系
C++ Builder 参考手册 ➙ System ➙ TObject ➙ Equals