Linux伊甸园论坛's Archiver

flag 发表于 2004-3-6 12:41

warning C4786?

warning C4786: '?rbegin@?$list@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@QBE?AV
?$reverse_bidirectional_iterator@Vconst_iterator@?$list@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@V?$basic_string@DU?$char_traits@D@std@@V?$alloc
ator@D@2@@3@ABV43@PBV43@H@2@XZ' : identifier was truncated to '255' characters in the browser information

我用vc6把我用CStringList、CTypedPtrMap类做的小程序改成用list、map做的,发现有很多这样的warning,直觉上觉得应该是有什么出处,不知道哪位能给些信息。

DarkSpy 发表于 2004-3-14 21:56

能否用 code 形式贴?

flag 发表于 2004-3-15 08:03

都一样的效果啦,看样子你也没有遇到这样的问题,我看到微软给的例子有一些用了
#pragma warning(disable:4786)
似乎本来就想屏蔽这类的警告,估计也不是什么大问题,不过还是显露了一些vc库和STL之间的问题。

sharkhuang 发表于 2004-6-1 14:25

VC6.0的老bug

go

ainet 发表于 2004-9-3 17:30

会不会时vc的编码问题?存成文本文件再转!

whyglinux 发表于 2004-9-4 11:47

sharkhuang说得不错,是 VC6.0的老bug。

其起因在于:编译器内部生成的标识符的长度超过255时将对其进行截断到255字符,因此出现了这个警告。

VC6虽然是一个优秀的编译器,但是由于在很多方面对C++标准支持不好,建议换用其它编译器(如VC++ .NET、GCC)编译C++程序。

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.