6

我有一个简单的应用程序,我尝试使用 VC express 编译并使用:
包含 MFC 和 ATL 的 Windows server 2003 的 Microsoft 平台 SDK。现在我有这个简单的代码:

CString strValue("test");
CString s = strValue.Trim();
LPCTSTR lpStr = (LPCTSTR)strValue.Trim()

这给了我一个编译错误: c:\dev\test.cpp(463) : 错误 C2039: 'Trim' : is not a member of 'CString' c:\program files\microsoft platform sdk for windows server 2003 r2\include \mfc\afx.h(369) : 见 'CString' 的声明

我的平台 SDK 和 vc express 有问题吗?

4

3 回答 3

5

Visual C++ Express Edition 没有内置对 ATL 和 MFC 的支持(CString是一个 MFC 类,实现为共享的 MFC/ATLCStringT类:文档)。

如果你真的买不起标准版,你可以依靠这个howto通过安装DDK来添加ATL和MFC支持:http: //www.codeproject.com/KB/MFC/MFCinVisualStudioExpress.aspx

于 2010-07-05T11:45:50.517 回答
2

您可以尝试使用 CString 的 TrimLeft()、TrimRight() 函数。

于 2010-07-16T13:47:20.043 回答
0

使用“Microsoft Platform SDK for Windows Server 2003 R2”中的 MFC 似乎安装了早期版本的 MFC,其中 CString 还没有 Trim() 函数。改用 TrimLeft() 和 TrimRight() 组合。

此指向 CString 文档的 Visual C++ 6 版本的链接显示该方法不存在,但:http: //msdn.microsoft.com/en-us/library/aa315043%28v=vs.60%29.aspx

于 2011-07-06T14:54:59.317 回答