关于VC6编译时的4786的问题(使用#pragma warning(disable:4786)没有解决)
如标题所写,最近使用VC6编译一个工程时一开始release和debug都会出现4786的警告,于是将#pragma warning(disable:4786)加入到#include<vector>等这样相应的代码前,结果解决了部分4786的警告,还有的警告如下:
IPRoute.Cpp
Generating Code...
warning C4786: 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,InvitedToChatRoom_T>,std::map<std::basic_string<char,std::char_trai
ts<char>,std::allocator<char> >,InvitedToChatRoom_T,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<InvitedToChatRoom_T> >::_Kfn,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<c
har> > >,std::allocator<InvitedToChatRoom_T> >' : identifier was truncated to '255' characters in the debug information
...
warning C4786: 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,RecvFileTrans_T>,std::map<std::basic_string<char,std::char_traits<c
har>,std::allocator<char> >,RecvFileTrans_T,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<RecvFileTrans_T> >::_Kfn,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std
::allocator<RecvFileTrans_T> >::_Redbl' : identifier was truncated to '255' characters in the debug information
Compiling...
NetCommon.cpp
这样的警告在前面没有相关的cpp文件(一般的4786都是XXX.cpp:warning C4786...),所以没有办法对相应cpp来添加disable 4786,于是查msdn2008,发现有编译选项:
/wd n 禁用指定的编译器警告,其中 n 是编译器警告编号。例如,/wd4326 禁用编译器警告 C4326。
于是在工程设置Project Settings===>C/C++===>Project Options中直接添加/wd4326
但是重新clean,然后rebuild all除了上面的warning 4786外还出现了Command line warning D4002 : ignoring unknown option '/wd4326'
使用这个http://topic.csdn.net/u/20081106/18/ddb9814a-2c8e-4fae-a882-1f69c0e43198.html帖子里面的方法也没有解决。请各位帮忙看看,指教一二吧。
谢谢