gpt4 book ai didi

c++ - std::string 到 LPOLESTR

转载 作者:搜寻专家 更新时间:2023-10-31 00:19:39 25 4
gpt4 key购买 nike

我有一个这样的字符串数组:

using std::string;
string myArray[] = { string("abc"), string("foo"), string("muh") };

现在我想使用这个功能:

HRESULT Init(T* begin, T* end, IUnknown* pUnk, CComEnumFlags flags = AtlFlagNoCopy );

在我的案例中,T 是 LPOLESTR。所以我需要分别将 std::string 数组转换为 LPOLESTR 我需要一个 LPOLESTR* 来开始和结束这个数组。这是怎么做到的?

提前致谢

最佳答案

ATL 有一个 set of macros用于字符串转换。在您的情况下,您可以使用:

LPOLESTR olestr = A2OLE(std_str.c_str());

请注意,OLESTR 基本上是一个 wchar_t*,因此如果您使用的是 std::wstring(或宽字符字符串文字),您甚至不需要宏:

LPOLESTR olestr = std_wstr.c_str();

关于c++ - std::string 到 LPOLESTR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7751437/

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