0

我似乎无法正常工作,打开我的 c# 项目文件 (.exe) 后出现错误,并显示“对象引用未设置为对象的实例”。这是线和它下面的线。

// Update the actual position

Actor.Position = new Vector3(
                        Actor.PositionToSet.X, 
                        Actor.PositionToSet.Y, 
                        (Math.Round(
                            GetUserStepHeight(
                                Actor.PositionToSet),
                                1)));

Actor.PositionToSet = null;
4

2 回答 2

1

可能性是 1. Actorisnull或 2. Actor.PositionToSetis null

要检查,要么有这个:

if(Actor == null){
    System.Console.WriteLine("Actor is NULL");
}

if(Actor.PositionToSet == null){
    System.Console.WriteLine("Actor.PositionToSet is NULL");
}

或使用 Visual Studio 中的 LINE BY LINE 调试器。

这是我多年前得到的一条建议:

  1. 在编写代码之前先思考,并建立代码的心理模型,然后当出现问题时,只需考虑问题所在而不看代码。

  2. 对您的代码进行单元测试,使其成为您编码方法的标准实践。这将为您节省数年的调试时间。

于 2013-11-10T05:35:58.210 回答
0

请检查ActorActor.PositionToSet不为空。这是唯一的原因。

于 2013-11-10T05:32:23.663 回答