- 1
- 2
- 3
- 4
- 5
- 6
Если свойство должно только читаться или записываться, в его описании может присутствовать соответствующий метод:
type
TAnObject = class(TObject)
property AProperty: TSomeType read GetValue;
end;
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−127
Если свойство должно только читаться или записываться, в его описании может присутствовать соответствующий метод:
type
TAnObject = class(TObject)
property AProperty: TSomeType read GetValue;
end;
В этом примере вне объекта значение свойства можно лишь прочитать; попытка присвоить свойству AProperty значение вызовет ошибку компиляции.
Для присвоения свойству значения по умолчанию используется ключевое слово default:
[code] property Visible: boolean read FVisible write SetVisible default True;
Это означает, что при запуске программы свойство будет установлено компилятором в True
{Из учебника для долбоёбов, под авторством ***}
AnalniyTerzatel 05.12.2016 12:43 # −1
guest 06.12.2016 11:48 # −1
O____O 07.12.2016 13:39 # −2
AnalniyTerzatel 08.12.2016 14:11 # −1
O____O 08.12.2016 14:52 # −1
Steve_Brown 05.12.2016 14:32 # −2
LightBlack 05.12.2016 17:17 # +2
Steve_Brown 05.12.2016 19:18 # 0
LightBlack 05.12.2016 19:58 # 0
Dr_Stertor 05.12.2016 20:03 # +3
Потому, что при создании экземпляра класса, у вновь созданного все поля неявно обнуляются.
@Разве не GetValue()
Этот метод просто возвращает значение приватной переменной. Он не участвует в инициализации, тем более, что поле - только для чтения.
Инициализация полей объекта следует выполнять в конструкторе.
Автор учебника (кстати, кто он?) своей ложью толкает новичков на неверный путь.
3_14dar 05.12.2016 23:02 # 0
Изучение сасцаля?
Dr_Stertor 05.12.2016 23:26 # 0