01BIM社区

 找回密码
 立即注册

扫一扫,访问微社区

查看: 3233|回复: 0

warning C4996: 'MBCS_Support_Deprecated_In_MFC': MBCS suppor...

[复制链接]

156

主题

647

帖子

2540

积分

金牌会员

Rank: 6Rank: 6

积分
2540
发表于 2015-9-6 14:28:26 | 显示全部楼层 |阅读模式

在用Visual Studio 2013编译一个旧的VC++项目时,出现大量的这样的警告:


[plain] view plaincopyprint?


  • 1>c:\program files (x86)\microsoft visual studio 12.0\vc\atlmfc\include\afx.h(38): warning C4996: 'MBCS_Support_Deprecated_In_MFC': MBCS support in MFC is deprecated and may be removed in a future version of MFC.  
  • 1>          c:\program files (x86)\microsoft visual studio 12.0\vc\atlmfc\include\afx.h(33) : see declaration of 'MBCS_Support_Deprecated_In_MFC'  





出现这样的警告,原因是因为:

由于历史原因,MFC同时支持 Unicode 和 MBCS(multi-byte character set),但 Unicode 日渐变得流行,而 MBCS 逐渐用得越来越少,所以,新版本的 MFC 已经把 MBCS 作为过时的方法,所以用新版本的 Visual Studio 编译 MBCS 程序的时候会出现这样的警告信息,建议大家在新的程序中废弃 MBCS 而采用 Unicode。


关于程序支持 Unicode 还是 MBCS,设置选项在这里:



但是,对于已经采用 MBCS  的旧版的VC++程序,我们不打算将其迁移至 Unicode,又不想见到大量的 C4996 警告,怎么办呢?关闭编译器的 C4996 警告,需要在 preprocessor 定义中增加 NO_WARN_MBCS_MFC_DEPRECATION





回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|01BIM社区 - 最专业的BIM技术交流平台 ( 渝ICP备15000873号 )

GMT+8, 2024-5-7 00:15 , Processed in 0.055636 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表