设为首页 加入收藏

TOP

4.11.3 禁止编译器警告
2013-10-07 15:02:07 来源: 作者: 【 】 浏览:71
Tags:4.11.3 禁止 编译器 警告

4.11.3  禁止编译器警告

头文件<boost/config/warning_disable.hpp>可用于禁止特定编译器(目前有微软的VC和intel编译器)的警告,尤其是VC中"讨厌"的C4996警告。

C4996警告表明VC编译器遇到了某个被标记为deprecated的函数调用,但大多数情况下而这些函数可能是标准的C/C++(www.cppentry.com)库函数,用法完全正确--甚至在微软自己的某些库中也使用了这些函数。

例如下面的代码,它调用了C的标准字符串拷贝函数:

  1. char s1[] = "teststr";  
  2. char s2[20];  
  3. strcpy(s2, s1);  

将导致VC8报C4996警告:'strcpy' was declared deprecated。

如果代码编译时出现了大量的C4996警告,而你确信函数调用完全没有问题,为了避免使重要的错误信息淹没在无聊的警告中,可以考虑使用<boost/config/warning_disable. hpp>。

使用该头文件应保证它出现在所有头文件之前,即:

  1. #include <boost/config/warning_disable.hpp> 
  2. #include <...> 

最后提一点忠告,不是所有的警告都可以忽略的,有的警告预示着可能潜在的错误,这也是为什么Boost仅仅禁止了C4996这一个警告的原因。
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇4.10.5 与字符串的转换 下一篇4.10.4 增强的uuid类

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: