gpt4 book ai didi

c++ - 从字符数组转换为字符串

转载 作者:行者123 更新时间:2023-11-28 06:12:56 25 4
gpt4 key购买 nike

我想像这样将一个字符数组转换成一个宽字符串

std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> converter;
std::wstring ws=converter.from_bytes({99,108,105,235,110,116}).

但这行不通。

`235` is an invalid narrowing conversion from int to char:constant character doesn't fit in destination type.

最佳答案

唯一可以说是可行的 from_bytes 重载您的代码是采用 const byte_string& 的版本.您没有使用自定义分配器,所以 byte_stringstd::basic_string<char, std::char_traits<char>, std::allocator<char>> ,又名 std::string .

std::string有一个 initalizer_list<char>构造器;然而,char在您的平台上已签名,不能代表值 235 , 从 235 进行隐式转换至 char窄化转换,这在花括号初始化列表的顶层是不允许的。

使用 char(235)而不是明确地将其转换为 char .

关于c++ - 从字符数组转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30882316/

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