【发布时间】:2011-05-14 18:27:20
【问题描述】:
我想要得到的是一个函数,它生成一个适用于给定字符类型(char 或 wchar_t)的 CStringT 实例。
这是一个人为的例子:
#include <atlstr.h>
template <typename CHAR_T>
inline
CStringT< CHAR_T, ATL::StrTraitATL< CHAR_T, ATL::ChTraitsCRT< CHAR_T > > >
AsCString(const CHAR_T * psz)
{
return CStringT< CHAR_T, ATL::StrTraitATL< CHAR_T, ATL::ChTraitsCRT< CHAR_T > > >(psz);
}
我当然可以使用上面的(它似乎可以编译),但如果我可以使用类似的东西,它对我的代码的读者来说会更好(并且可能是为了将来的兼容性):
ATL::make_cstring(psz);
有人知道这样的实用程序或类似的东西吗?
【问题讨论】:
-
人们还在使用 CString 编写新代码?呸!
-
试图澄清:上述工作,但我不得不提供太多我喜欢的论据。我真正想说的是 CStringT
。但这无法编译,因为底层 CString 没有为其其余参数提供默认类型,所以我说的比我真正想要的要多得多(而且我不确定它是否有意义其他不一定使用 CRT (ChTraitsCRT) 的项目...
标签: c++ visual-studio-2008 mfc atl