gpt4 book ai didi

c++ - 根据 MSVC++ 中的 unicode 设置自动在 std::string 和 std::wstring 之间切换?

转载 作者:可可西里 更新时间:2023-11-01 18:25:56 26 4
gpt4 key购买 nike

我正在编写一个 DLL,并希望能够在 MSVC++2010 中的 unicode 和多字节设置之间切换。例如,我使用 _T("string")LPCTSTRWIN32_FIND_DATA 而不是 -W 和 -A 版本等等。

现在我想让 std::strings 根据 unicode 设置在 std::stringstd::wstring 之间变化。那可能吗?否则,这可能最终会变得极其复杂。

最佳答案

为什么不像 Win32 API 那样做:在内部使用宽字符,并提供 DoSomethingA 函数的字符转换外观,将其输入简单地转换为 Unicode。

也就是说,您可以像这样定义一个 tstring 类型:

#ifdef _UNICODE
typedef std::wstring tstring;
#else
typedef std::string tstring;
#endif

或者可能:

typedef std::basic_string<TCHAR> tstring;

关于c++ - 根据 MSVC++ 中的 unicode 设置自动在 std::string 和 std::wstring 之间切换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6132753/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com