Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.02.05;
Скачать: [xml.tar.bz2];

Вниз

Авто инициализация переменной целого типа   Найти похожие ветки 

 
Nan   (2006-01-19 09:07) [0]

Как в Delphi сделать так, чтобы переменная целого типа принимала
значение равное 0 автоматически при ее объявлении ?


 
Vemer ©   (2006-01-19 09:16) [1]

Var
MyInteger : Integer = 0;
Only for global.


 
Nan   (2006-01-19 09:21) [2]

Это я знаю, а можно ли сделать, чтобы это происходило автоматом в том числе и с локальными переменными ?


 
MBo ©   (2006-01-19 09:31) [3]

{$J+}//Project-Options-Compiler-Assignable Typed Constants
procedure TForm13.FormCreate(Sender: TObject);
const
 A:Integer=0;
begin
 A:=5;
 Caption:=IntToStr(A);
end;


 
Юрий Зотов ©   (2006-01-19 09:33) [4]

1. Глобальные переменные (и поля объектов) и без того автоматически инициализируются нулями.

2. Локальные переменные не инициализируются.


 
evvcom ©   (2006-01-19 12:03) [5]


> MBo ©   (19.01.06 09:31) [3]

Лень проверять, но интересно, эта константа в стек ляжет или в "глобальную" область?
А вообще сама идея записи в константу ... Борланд извратился.


 
begin...end ©   (2006-01-19 12:10) [6]

> evvcom ©   (19.01.06 12:03) [5]

> Лень проверять, но интересно, эта константа в стек ляжет
> или в "глобальную" область?

Конечно же, НЕ в стек. При выходе в подпрограммы она должна сохранять своё значение.


 
begin...end ©   (2006-01-19 12:12) [7]

> в подпрограммы

из подпрограммы


 
Digitman ©   (2006-01-19 12:24) [8]


> константа в стек ляжет или в "глобальную" область?


Константа никуда не "ляжет".

"Ложатся" переменные, а не константы.


 
Digitman ©   (2006-01-19 12:25) [9]


> Константа никуда не "ляжет".


НЕтипизированная, имелось ввиду.


 
evvcom ©   (2006-01-19 12:39) [10]


> "Ложатся" переменные, а не константы.

Спасибо, я это знал.

> НЕтипизированная, имелось ввиду.

Вот именно. В данном-то случае разговор идет о типизированной. См. [3]. Я так и написал "эта константа".

> Конечно же, НЕ в стек.

Вот и я так думаю. Т.е. для разных объектов класса TForm13 (13 - намек на глючность :) сего подхода?) будет выполнена инициализация константы единожды (или всякий раз? нет надо все же посмотреть, интересный пример), в одном объекте она изменится, а в другом инитное значение уже метод не увидит. Не, сейчас проверю...


 
evvcom ©   (2006-01-19 12:45) [11]


> НЕ в стек
> в одном объекте она изменится, а в другом инитное значение
> уже метод не увидит

Так и есть. Точно Форма №13. С чертями дружна :)



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

Форум: "Начинающим";
Текущий архив: 2006.02.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.013 c
9-1124403540
ConferNo
2005-08-19 02:19
2006.02.05
GLScene Lightmaps


2-1137705603
Змей
2006-01-20 00:20
2006.02.05
русские или английские буквы в строке?


4-1132644725
Pank83
2005-11-22 10:32
2006.02.05
Отследить запуск процесса


2-1136627227
Goblin
2006-01-07 12:47
2006.02.05
Сссылка


3-1134117050
kyn66
2005-12-09 11:30
2006.02.05
Поиск в таблице с составным индексом





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский