首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用虚幻的FString将分隔浮点数的TArray<uint16>转换为C++

如何使用虚幻的FString将分隔浮点数的TArray<uint16>转换为C++
EN

Stack Overflow用户
提问于 2022-03-13 00:26:02
回答 1查看 844关注 0票数 1

如果FString为"123.2222,446.4444,55234.2342“,如何将其转换为uint16类型的TArray?

当前的尝试是使用以下方法将字符串解析为数组

代码语言:javascript
复制
TArray<FString> Parsed;
    HeightMapData.ParseIntoArray(Parsed, TEXT(","), false);

这似乎很管用。接下来是如何将其转换为uint16的问题。

我在努力

代码语言:javascript
复制
const TArray<uint16*>& parsedArray = reinterpret_cast<const TArray<uint16*>&>(Parsed);

但这是行不通的。错误:父地址对parsedArray无效

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-03-13 07:21:45

您不能将字符串数组看作是整数数组,而不能reinterpret_cast。需要将每个字符串转换为新数组中的整数:

代码语言:javascript
复制
TArray<uint16> intArray;
for (const auto& str : Parsed)
    intArray.Add(FCString::Atoi(str));

参考文献:https://docs.unrealengine.com/4.26/en-US/ProgrammingAndScripting/ProgrammingWithCPP/UnrealArchitecture/StringHandling/FString/

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71453555

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档