Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

инициализировать переменную   Найти похожие ветки 

 
_QWERTY_   (2012-02-06 11:01) [0]

Нужно ли инициализировать nil переменную FMyControl в конструкторе или она итак до создания экхемпляра объекта будет равна nil?


MyClass = class(TObject)
private
 FMyControl: TMyControl;
public
 constructor Create;
 procedure DoSomething;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 {  }
 Assert(FControl = nil);
 {  }
end;

{ TMyClass }

constructor TMyClass.Create;
begin
 // <- FMyControl := nil ?
end;

procedure TMyClass.DoSomething;
begin
 // FMyControl := TMyControl.Create(nil);
end;


 
MBo ©   (2012-02-06 11:08) [1]

Не нужно. При создании родительского объекта его область данных заполняется нулями.


 
Омлет ©   (2012-02-06 11:09) [2]

Всё автоматом инициализируется.

"To create an object, call the constructor method on a class type. For example,

MyObject := TMyClass.Create;

This allocates storage for the new object on the heap, sets the values of all ordinal fields to zero, assigns nil to all pointer and class-type fields, and makes all string fields empty."



Страницы: 1 вся ветка

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.058 c
2-1339183336
простофан
2012-06-08 23:22
2013.03.22
rewrite


8-1225660857
Anatol_rus
2008-11-03 00:20
2013.03.22
Те кто работал с DirectShow9 и полноэкранным режимом помогите


1-1296814637
oleg_teacher
2011-02-04 13:17
2013.03.22
Autosize для Radiobutton


15-1349434291
oxffff
2012-10-05 14:51
2013.03.22
Ищем ABAP стажеров(разработчиков).


15-1350643594
Grimm375
2012-10-19 14:46
2013.03.22
Информировать, какие символы разрешено вводить