【发布时间】:2012-06-20 05:10:27
【问题描述】:
我正在做从 windows 到 wince 的转换工作。
对于使用 iostream,我选择STLport5.2.1。
我在 vs2008 上收到编译错误:
am files (x86)\windows ce tools\wce500\athenapbws\mfc\include\wcealt.h(248) : error C2084: function 'void *operator new(size_t,void *)' has a body
2> D:\Program Files (x86)\Windows CE Tools\wce500\AthenaPBWS\include\ARMV4I../Armv4i/new(71) :参见之前对“新”的定义
2>d:\program files (x86)\windows ce tools\wce500\athenapbws\mfc\include\wcealt.h(254) : 错误 C2084: function 'void operator delete(void *,void *)' already有身体
2> D:\Program Files (x86)\Windows CE Tools\wce500\AthenaPBWS\include\ARMV4I../Armv4i/new(73) :参见之前的“删除”定义
2>Util1.cpp 2>D:\Program Files (x86)\Windows CE Tools\wce500\AthenaPBWS\include\ARMV4I../Armv4i/new(72) : 错误 C2084: 函数 'void *operator new(size_t,void *)' 已经有一个身体
2> d:\program files (x86)\windows ce tools\wce500\athenapbws\mfc\include\wcealt.h(247) : 参见之前对“新”的定义
2>D:\Program Files (x86)\Windows CE Tools\wce500\AthenaPBWS\include\ARMV4I../Armv4i/new(74) : error C2084: function 'void operator delete(void *,void *) ' 已经有实体了
2> d:\program files (x86)\windows ce tools\wce500\athenapbws\mfc\include\wcealt.h(253) : 参见之前的“删除”定义
你如何解决这个错误?
【问题讨论】:
-
在为 Windows CE 5.0 编译时,您需要 VS2005 或 VS2008。两者都带有用于 Windows CE 的 STL 版本。当你只需要 iostream 的时候为什么不使用这个 STL 实现呢?
标签: visual-c++ windows-ce stlport