Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Внизинициализировать переменную Найти похожие ветки
← →
_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;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.081 c