Консультация № 144242
17.09.2008, 20:44
0.00 руб.
0 7 3
В Studio 2005 получил предупреждение
'localtime' was declared deprecated

Это означает, что функция устарела??

Обсуждение

Неизвестный
17.09.2008, 21:13
общий
это ответ
Здравствуйте, Warobushek!

Это сообщение значит, что функция "localtime()" устарела. Возле описания этой ошибки, также должно быть сообщение типа:

Consider using localtime_s instead

Т.е. предложение использовать функцию "localtime_s()".
давно
Академик
20764
1861
17.09.2008, 21:42
общий
Это кто её объявил устаревшей? В ISO/IEC 9899:TC2 она вполне современная. В POSIX.1-2001 ещё появился localtime_r, но вовсе не вместо старой функции. Про localtime_s впервые слышу. Похоже, M$ опять на стандарты наплевал.
Неизвестный
17.09.2008, 21:55
общий
Да я тоже поражаюсь!
Неизвестный
18.09.2008, 07:09
общий
это ответ
Здравствуйте, Warobushek!
Да, это означает что функция устарела. Вместо нее предлагается использовать более безопасную функцию localtime_s. Полный список устаревших функций можно посмотреть здесь http://msdn.microsoft.com/en-us/library/ms235384.aspx
Неизвестный
18.09.2008, 07:30
общий
это ответ
Здравствуйте, Warobushek!

Это значит, что не функция устарела, а в данной реализации считается не актуальной (для данной среды (компилятора)) и возможно, в последствии будет убрана. Не всегда, то, что "убирается" в реальности перестает работать, часто просто делаются механизмы, которые делают логический выбор - контроль версий, в пользу или нового, или определенного "правильным".
Microsoft часто использует собственные видения на стандарты - если вы используете MS VS 2005 и продукты MS вообще, то лучше ориентироваться на эти продукты, со всеми "плюсами и минусами". У MS довольно много чего сделано не так как в других средах/компиляторах или стандартах, множество заголовочных файлов (где определяются функции, структуры и т.д.) не имеют аналогов, не смотря на то, что они входят в «стандартные» библиетеки.
Неизвестный
18.09.2008, 07:35
общий
URL >> Deprecated CRT Functions - MS идет своим путём.
Неизвестный
18.09.2008, 08:43
общий
Мда.. Очень интересно. Всем спасибо за ответы.
Форма ответа