TObject::FieldAddress:通过成员名称返回成员的地址
通过成员名称返回成员的地址。
函数原型:
void *__fastcall FieldAddress(const ShortString &Name); |
void *__fastcall FieldAddress(const UnicodeString Name); |
头文件:
#include <System.hpp>
命名空间:
System
参数:
Name:成员的名称
返回值:
成员的地址,如果成员在 __published: 访问权限区域;
如果成员不是 __published: 访问权限,返回值为 NULL;
如果没有这个名称的成员,返回值为 NULL。
例子:
class TMyObject : public TObject
{
__published:
TMemo *lpMemo;
public:
void ShowMsg(UnicodeString s)
{
lpMemo->Lines->Add(s);
}
};
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TMyObject *Obj = new TMyObject;
TMemo **ppMemo = (TMemo **)Obj->FieldAddress(L"lpMemo");
*ppMemo = Memo1; // 相当于 Obj->lpMemo = Memo1;
Obj->ShowMsg(L"Test FieldAddress!"); // 显示在 Memo1 里面
delete Obj;
}
//--------------------------------------------------------------------------- |
兼容性:
相关链接:
• MethodAddress • MethodName • TObject::ClassType • TObject::ClassName • TObject • VCL基础类
|