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

Вниз

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

 
Man ©   (2003-07-22 12:40) [0]

Привет Всем!Такой вопрос:как инициализируются переменные в классе по умолчанию.Т.е. глобальную переменную я могу проинициализировать,к примеру x:integer=7,да и по умолчанию и без этого по умолчанию в ней будет 0. Может есть какие настройки для компилера.Зараннее всем большое спасибо!


 
ЮЮ ©   (2003-07-22 12:42) [1]

в конструкторе


 
KSergey ©   (2003-07-22 12:43) [2]

Члены класса сбрасываются в 0 создании экземпляра


 
Digitman ©   (2003-07-22 12:50) [3]

Память под создаваемый экземпляр класса заполняется нулями (неявный код заполнения автоматически вставляется компилятором) до того как будет передано управление конструирующему методу.


 
Man ©   (2003-07-22 13:29) [4]

>KSergey
>Digitman
А это будет отрабатывать всегда или есть всё же директивы компилятору.


 
Толик ©   (2003-07-22 13:34) [5]

Директив никаких нет, инициализация нулями (FillChar) вызывается в InitInstance.

Initializes a newly allocated object instance to all zeros and initializes the instance’s virtual method table pointer.


 
3APA3A ©   (2003-07-22 14:14) [6]

А ты объяви переменную как property .

property Value:Integer read Get write Set default 666;


 
Толик ©   (2003-07-22 14:23) [7]

to 3APA3A © (22.07.03 14:14)
объяви переменную как property .
В этом случае инициализации не будет. Директива default вообще не для этого предназначена.


 
Anatoly Podgoretsky ©   (2003-07-22 14:41) [8]

Сообственно это тоже директива инициализации, только с противоположным действием, здесь мы указываем, что свойство Value не надо сохранять в потоке, а мы будем сами его инициализировать в конструкторе. Если поручить эту инициализацию системе, то мы как раз должны убрать эту директиву. (только для published свойств).



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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
1-10177
Chlavik
2003-07-23 01:39
2003.08.04
Вызов метода класса программы из dll библтотеки. Можна ли так ?


14-10456
X-Ray
2003-07-18 11:52
2003.08.04
Сколько стоят услуги программирования на Dtlphi в Киеве?


3-10139
AndDem
2003-07-15 08:12
2003.08.04
Коннект к листу Excel из Delphi


14-10376
Soft
2003-07-16 14:55
2003.08.04
Мышки и клавы


4-10489
Brand2000
2003-05-29 01:46
2003.08.04
Загрузка моей программы перед загрузкой Explorer a