Size: a a a

2020 February 09

NT

Nikita Tsukanov in pro.net
        public void VerifyThis()
       {
           if(_allocatorId == 0 || _initialAddress == null)
               throw new InvalidOperationException();
           if (_initialAddress != Unsafe.AsPointer(ref this))
               throw new InvalidOperationException();
       }
источник

E

EgorBo in pro.net
это разве удобно?
источник

NT

Nikita Tsukanov in pro.net
это обеспечивает требование "не осталось ни одного поинтера на освобождённую память"
источник

E

EgorBo in pro.net
псих
источник

NT

Nikita Tsukanov in pro.net
ну не хочу я в прикладном коде оперировать указателями
источник

E

EgorBo in pro.net
Никита любой нормальный язык может превратить в растоси
источник

NT

Nikita Tsukanov in pro.net
хочу ref-ами
источник

NT

Nikita Tsukanov in pro.net
в итоге структурки все указатели наружу отдают как ref-ы
источник

NT

Nikita Tsukanov in pro.net
плохо только что сишурп не умеет в ref запихивать null
источник

NT

Nikita Tsukanov in pro.net
неудобна
источник

E

EgorBo in pro.net
Nikita Tsukanov
плохо только что сишурп не умеет в ref запихивать null
вроде умеет
источник

E

EgorBo in pro.net
в Unsafe класс недавно добавили два метода
источник

E

EgorBo in pro.net
public static ref T NullRef<T>()
public static bool IsNullRef<T>(ref T source)
источник

E

EgorBo in pro.net
хз помогут ли тебе
источник

NT

Nikita Tsukanov in pro.net
Оууууу
источник

NT

Nikita Tsukanov in pro.net
хотет
источник

NT

Nikita Tsukanov in pro.net
хотя их можно и самому так-то сделать
источник

E

EgorBo in pro.net
ну на илкоде)
источник

NT

Nikita Tsukanov in pro.net
источник

NT

Nikita Tsukanov in pro.net
да без илкода
источник