@nodejs_ru

Страница 211 из 2748
Дмитрий
18.09.2016
09:00:43
Она откинется через год другой и что ты будешь делать?

Paul
18.09.2016
09:01:41
Слишком громкое заявление

Нет, теоретически можно везде писать безопасно

Но это уникальные кадры

Google
Дмитрий
18.09.2016
09:02:00
И ангуляре, ага

Образец для подражания

Paul
18.09.2016
09:02:41
Умные указатели это счётчики ссылок или указатели с десктруктором

Теряешь в производительности

Не будешь же все указатели оборачивать

В расте не тоже самое

В этом и идея

borrow checker смотри

><

Учи матчасть.

И да, кроме денглинг поинтеров и коротких лайфтаймов раст неплохо следит за многопоточностью. Плюс нормальная система типов.

Дмитрий
18.09.2016
09:04:21
Фанат раста в треде, все в укрытие

Paul
18.09.2016
09:04:44
Фанат-не фанат, а пока не будет конструктивной критики, тебя воспринимать в серьёз вряд ли стоит.

Google
Дмитрий
18.09.2016
09:05:12
Самомнение у тебя охренеть, конечно

Paul
18.09.2016
09:05:18
Ты же говорил про умные указатели. Если всё обложить умными указателями, то (очевидно) кресты будут медленными.

Поэтому так никто не пишет на крестах.

Нет, это принципиально разные вещи

borrow checker это проверки в компайл-тайме

А умные указатели это райнтайм код

В расте они тоже есть, так-то (счётчики Rc и Arc для меногопоточных)

Молодец. Идея в дестркукторе, который освобождает память.

Это если компилятор доказал, что тип простой твой

Число какое-нибдуь

Ты точно понимаешь что такое unique_ptr (и другие: shared_ptr и пр)?

Да, о чём я тебе и сказал

Ты предлагаешь все указатели поменять на умные

Т.е. по факту привезти GC в язык

Борроу чекер позволяет использовать простые указатели

Без дестркуторов и прочее

Пока это реально не будет требоваться.

Мда. Туго быть тобой.

Разберись уже что такое lifetime, и чем указатель отличается от умного указателя.

unique_ptr это указатель с деструктором.

Google
Paul
18.09.2016
09:10:11
И используется он, когда ты не можешь сказать, когда нужно освободить память

Дык, именно. Но зачем создавать unique_ptr в стеке?

Admin
ERROR: S client not available

Paul
18.09.2016
09:11:13
Так вот borrow checker позволяет тебе не использовать счётчики и unique пока в этом не появится реальная необходимость

Где в крестах ты либо рискуешь (гугли dangling pointer), либо обезопасываешься этими unique/shared

Причём тут куча вообще ><

Смотри, есть у тебя int

Ты хочешь с ним поработать

Ты можешь его на стеке выделить и он станет невалидным при закрытии скопа

unique_ptr же выделит его на куче

А на стеке останется твой указатель + деструктор

Воот. А через некоторое время другой разраб в конце функции решил заовнить его

Paul
18.09.2016
09:13:37
И приехал данглинг поинтер

Нельзя.

Ну или недосмотрел

Чаще всего и то и то

А общие договорённости это какие?

Всегда использовать unique_ptr и терять в производительности?

Ты реально не знаешь, что такое unique_ptr?

Я не буду искать это бенчмарк, потому что так *никто не пишет*. Это практически как писать c GC

Google
Paul
18.09.2016
09:17:12
Разумеется.

Страница 211 из 2748