gpt4 book ai didi

c# - 无法将类型 'UnityEngine.Vector2?' 隐式转换为 'UnityEngine.Vector2'

转载 作者:行者123 更新时间:2023-11-30 14:46:26 27 4
gpt4 key购买 nike

这似乎是一个菜鸟问题,但我正在统一使用 gamespark。我像这样在包中发送 vector2:

data.SetVector2(1, new Vector2(1.0f, 1.0f, 1.0f)); 

然后我从数据包中获取它,例如:

Vector2 a = _packet.Data.GetVector2 (1);

但是我收到以下错误:无法隐式转换类型 UnityEngine.Vector2?到 UnityEngine.Vector2。

最佳答案

“?”意味着它是一个“可空”类型。要转换为 Vector2,请执行

Vector2 a = _packet.Data.GetVector2(1).Value;

这是来自 MS 的可空类型链接:https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/nullable-types/

可空类型还可以选择使用 HasValue 属性检查值是否为空。如果您不确定 GetVector2 是否确实返回了有效值,您应该检查 HasValue 并做出适当的响应。

关于c# - 无法将类型 'UnityEngine.Vector2?' 隐式转换为 'UnityEngine.Vector2',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49033509/

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