Ku2zoff писал: Достаточно утащить из последнего SDK файлы winsani_in.h и winsani_out.h, и вставить их перед и после инклуида windows.h соответственно. Или инклуида, который ссылается на windows.h.
Посмотрел я на это чудо. Вместо того, чтобы пройтись по своему коду автозаменой, они решили хаками переименовать виндовый HSPRITE и сделать вид, что ARRAYSIZE они не определяли. Воистину голдсорс в вальве - адское легаси, которое боятся лишний раз трогать...
Цитата:
Ku2zoff писал: Потому что _CRT_SECURE_NO_WARNINGS избавляет не от всех подобных варнингов.
Government-Man писал: Вместо того, чтобы пройтись по своему коду автозаменой, они решили хаками переименовать виндовый HSPRITE и сделать вид, что ARRAYSIZE они не определяли
А что ты ждал? Понабрали школьников по объявлениям, а нормальные ребята, которые писали, что "макросы это инструменты сатаны", давно на пенсии.
Добавлено 09-04-2021 в 12:11:
Цитата:
Government-Man писал: А от каких оно не избавляет?
Там вроде был ещё какой-то _CRT_SECURE_NO_DEPRECATE.
Government-Man писал: Вместо того, чтобы пройтись по своему коду автозаменой, они решили хаками переименовать
В этом есть зерно здравого смысла, на самом деле. Вот пройдёшься ты по всему коду автозаменой, а потом будешь вспоминать через некоторое время, какие файлы ты серьёзно изменил, а какие остались без изменений, только лишь заменил там вызовы функций. Ну всякого такого гавна, типа strcpy на strcpy_s или abs на fabs.
Я бы этим Сэмам ВанХерам и всем прочим кодопейсателям по шее бы знатно надавал за их ХлЭнханседы, где они всю вот эту фигню переписывают, чтобы варнингов не было.
Ku2zoff писал: Я бы этим Сэмам ВанХерам и всем прочим кодопейсателям по шее бы знатно надавал за их ХлЭнханседы, где они всю вот эту фигню переписывают, чтобы варнингов не было.
Я правильно тебя понял, что единственное предназначение варнингов - чтобы их затыкать при помощи разных ухищрений типа макросов? Ну т.е. это такая мини-игра от разработчиков компилятора? А реально их править, меняя код - это фигня, достойная сбитых шапок, а то и ударов трубой по спине?
Ku2zoff писал: будешь вспоминать через некоторое время, какие файлы ты серьёзно изменил, а какие остались без изменений
Так это же в системе контроля версий сохраняется.
Цитата:
XaeroX писал: Там вроде был ещё какой-то _CRT_SECURE_NO_DEPRECATE.
Хм... Возможно ты и прав, хотя я такого не помню. Я помню, что был еще _CRT_NONSTDC_NO_DEPRECATE для функций, которых нет в стандарте, вроде strnicmp, но вроде бы в новых версиях CRT это вообще убрали, так что их теперь можно только заменить на _strnicmp, что, впрочем, тоже несложно.
XaeroX писал: Я правильно тебя понял, что единственное предназначение варнингов - чтобы их затыкать при помощи разных ухищрений типа макросов? Ну т.е. это такая мини-игра от разработчиков компилятора?
Конечно нет. Если ты пишешь код с нуля, ты его пишешь грамотно, чтобы варнингов не было. Когда дело касается компиляции чужого кода,тем более в любительских целях, я считаю лишним лопатить его вдоль и поперек, исправляя очевидные старые ошибки.
XaeroX писал: Я правильно тебя понял, что единственное предназначение варнингов - чтобы их затыкать при помощи разных ухищрений типа макросов? Ну т.е. это такая мини-игра от разработчиков компилятора? А реально их править, меняя код - это фигня, достойная сбитых шапок, а то и ударов трубой по спине?
В Фитцквейке примерно все функции кастуют к типу войд, для тех же целей как я понимаю.