Здравствуйте, memorilik, Вы писали:
M>Здравствуйте, Кузнецов Виктор, Вы писали:
КВ>>IT-шный юмор становится все тупее и тупее. КВ>>Здесь-то что смешного?!!!
M>Вы тоже "-1" к беззнаковому часто приводите?
Представьте себе, бывает. Если функция возвращает DWORD, а 0xFFFFFFFF — код ошибки, то читабельнее и проще писать тот код, над которым Вы по непонятным мне причинам, смеялись.
Но я так делаю, код понятнее становится.
if(ThreadID != INVALID_HANDLE_VALUE) {...}
Да и вообще, конструкция выше, это убожество какое-то, если человек под Win пишет!
Ничего кроме смеха, подобные вещи вызвать не могут. Ну ещё кучу мата иногда.
Здравствуйте, Crackjack, Вы писали:
C>if(ThreadID != (unsigned long) -1) {...}
C>#define INVALID_HANDLE_VALUE ((HANDLE)(LONG_PTR)-1)
C>Но я так делаю, код понятнее становится. C>if(ThreadID != INVALID_HANDLE_VALUE) {...} C>Да и вообще, конструкция выше, это убожество какое-то, если человек под Win пишет! C>Ничего кроме смеха, подобные вещи вызвать не могут. Ну ещё кучу мата иногда.
Может лучше написать:
std::numeric_limits<unsigned long>::max( )
ИМХО это и есть самый переносимый вариант.
Побеждающий других — силен,
Побеждающий себя — Могущественен.
Лао Цзы
Здравствуйте, dr.Chaos, Вы писали:
DC>Здравствуйте, Crackjack, Вы писали:
C>>if(ThreadID != (unsigned long) -1) {...}
C>>#define INVALID_HANDLE_VALUE ((HANDLE)(LONG_PTR)-1)
C>>Но я так делаю, код понятнее становится. C>>if(ThreadID != INVALID_HANDLE_VALUE) {...} C>>Да и вообще, конструкция выше, это убожество какое-то, если человек под Win пишет! C>>Ничего кроме смеха, подобные вещи вызвать не могут. Ну ещё кучу мата иногда.
DC>Может лучше написать:
DC>
DC>std::numeric_limits<unsigned long>::max( )
DC>
DC>ИМХО это и есть самый переносимый вариант.
Вы реально думаете, что человек, который пишет приведенный код, думает о переносимости? Уверяю Вас — нет!
Только под винду и только на С! STL и BOOSt — зло! )
DC>>ИМХО это и есть самый переносимый вариант.
M>Вы реально думаете, что человек, который пишет приведенный код, думает о переносимости? Уверяю Вас — нет! M>Только под винду и только на С! STL и BOOSt — зло! M>)
К чему столько спеси?
Побеждающий других — силен,
Побеждающий себя — Могущественен.
Лао Цзы
Здравствуйте, dr.Chaos, Вы писали:
DC>К чему столько спеси?
хм... Да так и есть, вообщем-то...
мои слова- M>Вы реально думаете, что человек, который пишет приведенный код, думает о переносимости? Уверяю Вас — нет! M>Только под винду и только на С! STL и BOOSt — зло! M>)
относиться вот к этому —
if(ThreadID != (unsigned long) -1) {...}
Здравствуйте, memorilik, Вы писали:
M>Может это и не в юмор надо, но меня улыбнуло...
Ничего смешного это из за ворнига сделано
Таже проблема возникала при for(size_t i=0;i<...) так вот если в этом масиве хранятся индексы другого масива и могут быть валидные ошибки со значенимем -1, то приходтится делать почти так же
if((size_t)-1!=a[i])
ThreadID = -1 не удалось создать поток вот и все, а что ты предлагаешь делать? ThreadID=0 так такое может быть. По идее и -1 может быть но сомневаюсь.
C>#define INVALID_HANDLE_VALUE ((HANDLE)(LONG_PTR)-1)
C>Но я так делаю, код понятнее становится. C>if(ThreadID != INVALID_HANDLE_VALUE) {...}
При чем тут это? Человек проверяет текущий это поток (псевдо-хендл) или нет. INVALID_HANDLE_VALUE это совсем из другой оперы...
По-крайней мере, судя по коду.
C>Да и вообще, конструкция выше, это убожество какое-то, если человек под Win пишет! C>Ничего кроме смеха, подобные вещи вызвать не могут. Ну ещё кучу мата иногда.
Для начала неплохо разобраться бы в том, над чем собственно смеяться.