如何使用 Unreal C++ 将定界浮点数的 FString 转换为 TArray<uint16>
How do you convert an FString of delimited floats to a TArray<uint16> using Unreal C++
给定“123.2222,446.4444,55234.2342”的 FString,如何将其转换为 uint16 类型的 TArray?
当前尝试使用
将字符串解析为数组
TArray<FString> Parsed;
HeightMapData.ParseIntoArray(Parsed, TEXT(","), false);
这似乎很有效。接下来是如何将其转换为 uint16 的问题。
我正在尝试
const TArray<uint16*>& parsedArray = reinterpret_cast<const TArray<uint16*>&>(Parsed);
但它不起作用。错误:parsedArray
的父地址无效
您不能 reinterpret_cast
并假装您的字符串数组是整数数组。您需要将每个字符串转换为新数组中的整数:
TArray<uint16> intArray;
for (const auto& str : Parsed)
intArray.Add(FCString::Atoi(str));
给定“123.2222,446.4444,55234.2342”的 FString,如何将其转换为 uint16 类型的 TArray?
当前尝试使用
将字符串解析为数组TArray<FString> Parsed;
HeightMapData.ParseIntoArray(Parsed, TEXT(","), false);
这似乎很有效。接下来是如何将其转换为 uint16 的问题。
我正在尝试
const TArray<uint16*>& parsedArray = reinterpret_cast<const TArray<uint16*>&>(Parsed);
但它不起作用。错误:parsedArray
的父地址无效您不能 reinterpret_cast
并假装您的字符串数组是整数数组。您需要将每个字符串转换为新数组中的整数:
TArray<uint16> intArray;
for (const auto& str : Parsed)
intArray.Add(FCString::Atoi(str));