![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 06.06.2010
Сообщений: 79
|
![]()
Здравствуйте!
Насколько я знаю компилятор автоматически инициализирует глобальные переменные так: целочисленные значения ноль, строковые значения ' ', а булевские — False. Локальные переменные не инициализируются компилятором автоматически. А что с полями объектов? |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]()
Вы о property?
Так же как и с локальными переменными, если на них ссылаются. По этому там есть слово default, которое определяет значение по умолчанию у property. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 06.06.2010
Сообщений: 79
|
![]()
Нет я не о property а вот об этих штуках
Код:
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
![]()
все поля класса зануляются при создании инстанса:
Код:
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
|
![]() |
![]() |
![]() |
#5 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,899
|
![]()
Человек_Борща, ключевое слово Default для не-массивовых проперти не делает указанное значение значением по умолчанию, оно лишь указывает, что при сериализации/десериализации объекта класса это проперти не надо записывать/читать, а вот в конструкторе разработчик сам должен позаботиться о присвоении такого дефолтного значения.
Раздел справки по данному вопросу: Storage Specifiers |
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 06.06.2010
Сообщений: 79
|
![]()
Простите тупого, но я так и не понял, обнулять поля в конструкторе или компилятор сам об этом позаботится?
|
![]() |
![]() |
![]() |
#7 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
![]()
сам, но особо рассчитывать на это, имхо, плохой стиль.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 06.06.2010
Сообщений: 79
|
![]()
Спасибо, теперь буду знать.
|
![]() |
![]() |
![]() |
#9 |
Форумчанин
Регистрация: 10.10.2013
Сообщений: 150
|
![]()
Все поля объекта инициализируются при его создании. Поэтому в компонентах поля не инициализируют в конструкторе, если они должны быть установлены в нулевые значения, все они и так обнулены по умолчанию. Но если переменная объявляется в модуле или подпрограмме то её обязательно нужно инициализировать (см. Объявление и инициализация переменных).
Сайт о программировании и трехмерной графике - cybersite.ucoz.net
|
![]() |
![]() |
![]() |
#10 | |
ПШП
Участник клуба
Регистрация: 15.07.2013
Сообщений: 1,926
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" | aleksei78 | Microsoft Office Excel | 13 | 25.08.2009 12:04 |
настроить при открытии Excel 2003 в окошке "Тип файлов" вывод пункта "Все файлы (*.*)" по умолчанию? | Unior | Microsoft Office Excel | 2 | 01.03.2009 02:42 |
Как добавить "значение по умолчанию" в базе Access? | bafy | БД в Delphi | 6 | 13.02.2009 12:29 |
Как прописать в ключ "(По умолчанию)" | UnD)eaD)Snake | Общие вопросы Delphi | 4 | 16.08.2007 12:00 |