проверяет классы на соответствие экземпляру класса. А что делает as?
var a = obj as A; a будет null если obj не A
Сейчас ещё можно писать if(obj is A a)
С is будет что-то вроде var a = obj is A ? A : Nullable?
var a = obj is A ? (A)obj : null
Да, вот так правильно
Где-то в документашке так это и описывается
Но так никто не пишет, пишут var a = obj as A;
Я про то, что у микрософтов где-то описано, что obj as A и эта конструкция через тернарный оператор приводят к одному и тому же результату
В каких случаях, может на примере среды Unity это может быть полезным?
у тебя есть человек и робот они игровые персонажи ну и где то они начинают глодать , тогда робота надо зарядить а человека покормить var robo = player as Robo; robo.power();
Ты перепутал, is проверят, является ли экземпляр класса экземпляром указанного класса, или нет as проверят и делает каст к нужному типу, если объект null, или тип не может быть кастнут (я хз как это слово склонить), то будет null
Обсуждают сегодня