去除编译时几种函数过期的警告介绍
去除编译时几种函数过期的警告介绍
在Visual C++ 2005中,有一些函数已不再建议使用,而应使用新提供的安全版本。如果使用的不再建议使用的函数,就会提出警告信息.
1.字符串相关的.
warning C4996: '_wstrtime' was declared deprecated.
Solution:设置工程的Preprocessor definition: _CRT_SECURE_NO_DEPRECATE
2.STL相关的.
warning C4996: 'std::char_traits<wchar_t>::copy' was declared deprecated
Solution:设置工程的Preprocessor definition: _SCL_SECURE_NO_DEPRECATE
warning C4996: 'std::char_traits<wchar_t>::copy' was declared deprecated
Solution:设置工程的Preprocessor definition: _SCL_SECURE_NO_DEPRECATE
3.MFC相关的.
warning C4996: 'ATL::CRegKey::QueryValue'was declared deprecated
Solution: 将QueryValue函数改为新的安全版本的QueryXXXValue(XXX为Value的数据类型)
例如:
warning C4996: 'ATL::CRegKey::QueryValue'was declared deprecated
Solution: 将QueryValue函数改为新的安全版本的QueryXXXValue(XXX为Value的数据类型)
例如:
CRegKey::QueryValue(szValue, szValueName, &dwSize);
-->
?CRegKey::QueryStirngValue(szValueName, szValue ,&dwSize);
?CRegKey::QueryStirngValue(szValueName, szValue ,&dwSize);
CRegKey::SetValue(szValue, szValueName);
-->
?CRegKey::SetStringValue(szValueName, szValue);
?CRegKey::SetStringValue(szValueName, szValue);