【发布时间】:2015-04-29 01:05:23
【问题描述】:
我对 C++ 有点陌生,我的背景是 Java。我正在研究一种 hdc 打印方法。 我想知道将字符串和整数的组合连接成一个 CString 的最佳实践。我正在使用 MFC 的 CString。
int i = //the current page
int maxPage = //the calculated number of pages to print
CString pages = ("Page ") + _T(i) + (" of ") + _T(maxPage);
我希望它看起来像“第 1 页,共 2 页”。我当前的代码不起作用。我收到错误消息:
表达式必须是整数或枚举类型
我找到了更困难的方法来做我需要的事情,但我想知道是否有类似于我正在尝试的简单方法。谢谢!
【问题讨论】:
-
问题是为什么要使用 MFC 及其古老的类,而不是普通的 C++ 字符串(即
std::string)?当然,除非您必须维护旧版 MFC 代码库。 -
我的雇主要求我在创建应用程序时使用 MFC。我将以下内容与 HDC 打印机一起使用。 CString str = m_CListCtrl.GetItemText(startrow, 0); dcPrinter.TextOut(startx+10, starty+1, _T(str), strlen(str));
标签: c++ mfc concatenation c-strings