- PVSM.RU - https://www.pvsm.ru -

Опасный баг в Unity3d Mono

Доброе время суток.

Хочу с вами поделиться информацией о страшном баге, который не просто найти.

Суть в чем: допустим у вас есть класс SomeClass, у которого есть публичное поле int или float или bool, которое по умолчанию проинициализировано конкретным значением. Пример:

public class SomeClass
{
    public int SomeValue = 1;
}

После чего вы в каком-то месте создаете экземпляр этого класса, используете инициализатор и приравниваете SomeValue — стандартное значение (ноль либо false в случае bool):

SomeClass a = new SomeClass { SomeValue = 0 };


В итоге a.SomeValue будет равно 1. Если же в инициализаторе будет не стандартное значение — всё будет работать корректно. Например:

SomeClass a = new SomeClass { SomeValue = 5 };

a.SomeValue будет равно 5.


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/pesochnitsa/81356