-
Ну уже лучше, Вы задумались.
про TOD#24:00:01 похоже вы уже согласились что это косяк хелпа а не кодесиса.
теперь о DATE1 := D#2010-12-10 + T#1d;
Предполагаю что вы то-же согласились что это не должно работать по той простой причине что тип данных DATE не предназначен для работы с функцией ADD. Поэтому возникает вопрос почему компилятор не матерится на DATE1 := DATE2+TIME1; с одной стороны это плохо, т.к. нарушено правило о типах данных и как компилятор в таком случае должен поступить? Привести к одному типу? к DWORD? или всё таки сматерится?
Вот тут уже можно начать спор о том как реагировать компилятору на запрос программиста, послать его, или руководствуясь другими правилами выполнить? И этот спор будет бесполезным, сколько людей столько и мнений, я например за то что-бы компилятор ко мне относился с уважением, и разрешал фокусы в надежде что я понимаю что делаю.
Обратите внимание, DATE1 := DATE2-DATE3; для компилятора ошибка, тип в данных совпадает и их не нужно приводить к одному типу. DATE1 := DATE2+TIME1; тип данных разный, их нужно привести к DWORD а для DWORD ADD работает. т.е. я не вижу непоняток. Компилятор ведь не телепат, он не может угадать что Вы думаете так, а я по другому.
Начинаю подозревать что dateadd сделали специально для того, чтобы избежать подобных недоразумений со стороны программистов.
Последний раз редактировалось BETEP; 06.12.2010 в 12:19.
Ваши права
- Вы не можете создавать новые темы
- Вы не можете отвечать в темах
- Вы не можете прикреплять вложения
- Вы не можете редактировать свои сообщения
-
Правила форума