class A
{
public:
int b;
}
...
A a;
int* iptr=&a.b;
class DELPHICLASS TLabel;
class PASCALIMPLEMENTATION TLabel : public TCustomLabel
{
typedef TCustomLabel inherited;
__published:
__property Align = {default=0};
__property Alignment = {default=0};
__property Anchors = {default=3};
__property AutoSize = {default=1};
__property BiDiMode;
__property Caption;
__property Color;
__property Constraints;
__property DragCursor = {default=-12};
__property DragKind = {default=0};
__property DragMode = {default=0};
__property EllipsisPosition = {default=0};
__property Enabled = {default=1};
__property FocusControl;
__property Font;
__property GlowSize = {default=0};
__property ParentBiDiMode = {default=1};
__property ParentColor = {default=1};
__property ParentFont = {default=1};
__property ParentShowHint = {default=1};
__property PopupMenu;
__property ShowAccelChar = {default=1};
__property ShowHint;
__property Transparent;
__property Layout = {default=0};
__property Visible = {default=1};
__property WordWrap = {default=0};
__property OnClick;
__property OnContextPopup;
__property OnDblClick;
__property OnDragDrop;
__property OnDragOver;
__property OnEndDock;
__property OnEndDrag;
__property OnMouseActivate;
__property OnMouseDown;
__property OnMouseMove;
__property OnMouseUp;
__property OnMouseEnter;
__property OnMouseLeave;
__property OnStartDock;
__property OnStartDrag;
public:
/* TCustomLabel.Create */ inline __fastcall virtual TLabel(Classes::TComponent* AOwner) : TCustomLabel(AOwner) { }
public:
/* TGraphicControl.Destroy */ inline __fastcall virtual ~TLabel(void) { }
};
__property Caption;
class myclass
{
private:
int somenumber;
protected:
int __fastcall GetSomeNumber()
{
return somenumber;
}
void __fastcall SetSomeNumber(int val)
{
somenumber=val;
}
public:
__property int SomeNumber=
{
read=GetSomeNumber,
write=SetSomeNumber
}
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
for(int i=0;i<ComponentCount;++i)
{
TComponent* component=Components[i]; // Берем следующий компонент
TLabel* label=dynamic_cast<TLabel*>(component); // Пытаемся привести его к TLabel*
if(label)
{
// Если успешно - меняем Caption
label->Caption="Это мой новый Caption";
}
}
}
#ifndef Unit1H
#define Unit1H
...
#endif
class something
{
public:
void some_proc(int)
{
}
public:
float some_const_proc() const
{
return 0.f;
}
};
int main()
{
// объявление указателя на функцию-член класса
void (something::*proc_ptr)(int);
// взятие адреса
proc_ptr = &something::some_proc;
// объявление указателя на константную функцию
float (something::*const_proc_ptr)() const;
// взятие адреса
const_proc_ptr = &something::some_const_proc;
// вызов
something s;
(s.*proc_ptr)(42);
// косвенный вызов (через указатель на объект)
something* s_ptr = &s;
float result = (s_ptr->*const_proc_ptr)();
}
Если Вы уже зарегистрированы на Портале - войдите в систему, если Вы еще не регистрировались - пройдите простую процедуру регистрации.