NullReferenceException: как исключить ошибку?

246
09 декабря 2021, 05:30

Ошибка:

NullReferenceException: Object reference not set to an instance of an object
Texturename.FirstTree.DrawFirstTree () (at Assets/TerrainTools/StampToolExtended/LoadScript/FirstTree.cs:74)

Есть класс :

namespace marijnz.EditorCoroutines
{
    public class PlacementObjects : EditorWindow
    {
        ...
        public Terrain[] TerrainList = new Terrain[0];
        ...
    }
}

Как в другом классе проверить, что TerrainList не пустой и то что он существует?

public class FirstTree  {
    public void DrawFirstTree() {
        marijnz.EditorCoroutines.PlacementObjects temp = marijnz.EditorCoroutines.PlacementObjects._windowPlacementObj;
        ...
        if(temp.TerrainList.Count() > 0) { //возникает ошибка тут
            if(temp.TerrainList[0]) {
                LoadTreeIcons(temp.TerrainList[0]);
                LoadTextureIcons(temp.TerrainList[0]);
            }
        }
        ...
    }
}
Answer 1

Ну, вы же этот список откуда-то берёте - так и проверяйте перед обращением к полю с помощью if([что-то] != null). При этом ошибка у вас, судя по всему, не в наличии листа, а в наличии самого объекта в _windowPlacementObj

Answer 2
public class FirstTree  {
    public void DrawFirstTree() {
        marijnz.EditorCoroutines.PlacementObjects temp = ...;
        if( temp != null ) { // <- проверка того, что объект на что-то ссылается
            if(temp.TerrainList.Count() > 0) {
                ...
        }
        ...
READ ALSO
WPF Прогресс Бар

WPF Прогресс Бар

Подскажите, я создал Progress Bar по паттерну MVVM в отдельной сборке, в View добавил DataContect -View Model и теперь мне нужно его подключить в другой сборке...

84
Указатель на тип (TypeObjectPointer) может быть null?

Указатель на тип (TypeObjectPointer) может быть null?

Читая про упаковку/распаковку на Википедии,

73
добавление 3d сцены в форму visual studio

добавление 3d сцены в форму visual studio

Всем привет, возникла задача добавить 3d сцену в окно формы в Visual studio, подскажите каким образом это можно реализовать?

200
Активные пункты в дереве меню

Активные пункты в дереве меню

Имеется скрипт отрисовки дерева меню на php:

250