gpt4 book ai didi

c++ - 如何在 Visual C++ 中使用 UTF8Encoding

转载 作者:太空狗 更新时间:2023-10-29 20:47:21 25 4
gpt4 key购买 nike

我需要将下面的 c# 代码更改为 c++ 代码。

    public static byte[] StrToByteArray(string str)
{
System.Text.UTF8Encoding encoding = new System.Text.UTF8Encoding();
return encoding.GetBytes(str);
}

关于 this website我找到了 UTF8Encoding 的 C++ 代码,我从中创建了这段代码

    void StrToByteArray(string unicodeString)
{
UTF8Encoding^ utf8 = gcnew UTF8Encoding;
array<Byte>^encodedBytes = utf8->GetBytes( unicodeString );
}

但这给了我以下错误

Error 2 error C2664: 'cli::array ^System::Text::Encoding::GetBytes(cli::array ^)' : cannot convert parameter 1 from 'std::string' to 'cli::array

为什么它会这样做,而它与文档完全相同? (除了我使用的是普通字符串,但使用顶级字符串^给我一个错误。)

我不确定它是否相关,但我的代码是托管的。

注意:在我开始工作之前,我尽量不担心返回任何数据。

最佳答案

string 是 C++ 中与 C# 中不同的数据类型。尝试改用 System::String^

关于c++ - 如何在 Visual C++ 中使用 UTF8Encoding,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5939494/

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