forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Основной форум (http://forum.boolean.name/forumdisplay.php?f=49)
-   -   Дата и время - глюк? (http://forum.boolean.name/showthread.php?t=1548)

archerix 23.09.2006 21:12

Дата и время - глюк?
 
Здравствуйте, народ
Долго бился :wallbash: , потом пришла в голову интересная мысль, попробовал... В общем, удивлен. Пример из хэлпа к МП:

Код:


Example
 
var time: integer;
text: string;
begin
time := GetCurrentTime;
text := 'Current time is ' + GetHour(time);
text := text + ':'+ GetMinute(time);
text := text + ':' + GetSecond(time);
DrawText(text, 0, 0);
Repaint;
Delay(1000); { wait 1 second before MIDlet terminates }
end.



Не работает, все время выкидывает ошибку несоответствия типов... Смотрел на него, смотрел, потом задался вопросом - чего это полное время целого типа, а часы или минуты - строка? Объявил все целым, ошибки перестало выкидывать. Что это, опечатка в хэлпе или какой глюк, никто не сталкивался?

Dragonprof 24.09.2006 00:39

Re: Дата и время - глюк?
 
Цитата:

Сообщение от archerix
Здравствуйте, народ
Долго бился :wallbash: , потом пришла в голову интересная мысль, попробовал... В общем, удивлен. Пример из хэлпа к МП:

Код:


Example
 
var time: integer;
text: string;
begin
time := GetCurrentTime;
text := 'Current time is ' + GetHour(time);
text := text + ':'+ GetMinute(time);
text := text + ':' + GetSecond(time);
DrawText(text, 0, 0);
Repaint;
Delay(1000); { wait 1 second before MIDlet terminates }
end.



Не работает, все время выкидывает ошибку несоответствия типов... Смотрел на него, смотрел, потом задался вопросом - чего это полное время целого типа, а часы или минуты - строка? Объявил все целым, ошибки перестало выкидывать. Что это, опечатка в хэлпе или какой глюк, никто не сталкивался?

function GetHour(time: integer): integer;
function GetMinute(time: integer): integer;
function GetSecond(time: integer): integer;

как видим в хелпе написано что возвращает целый тип! а
text := text + ':'+ GetMinute(time); - противоречит !
Получается или неправильно описана функция или хелп не так сделан!
...немного протестив увидел что и пример из хелпа и сови тесты показали одно что функция возвращает и целое значение и строку
Вот пример:

DrawText(Integertostring(GetSecond(time)), 0, 50); - работает
DrawText(''+ GetSecond(time), 0, 50); - тоже работает!
!!!! НО !!! DrawText(GetSecond(time), 0, 50); - Не пройдет!
так что дерзайте, чуствую таких "приколов" еще много! ИМХО...

archerix 24.09.2006 03:28

Re: Дата и время - глюк?
 
Цитата:

Сообщение от Dragonprof
так что дерзайте, чуствую таких "приколов" еще много! ИМХО...

Особенно мне понравился прикол, когда написал несколько функций, все работает. Просто перекопировал в другую программу - не работает :dontknow:

Piligrim 24.09.2006 10:32

Re: Дата и время - глюк?
 
это не прикол, а особенность языка ява. Если делать СТРОКА + ЧИСЛО она автоматически делает объединение с помощью StringBuffer невидимо для пользователя.

archerix 24.09.2006 13:11

Re: Дата и время - глюк?
 
Ява, может, и делает, но примерчик из хэлпа здорово вводит в заблуждение. Им стоило написать аккуратнее или сделать в примере комментарий по жтому поводу. Я вот поставил строками, как там, и два дня ломал голову, ища ошибку :(


Часовой пояс GMT +4, время: 14:29.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot