LINUX.ORG.RU

История изменений

Исправление hateyoufeel, (текущая версия) :

Умные указатели позволяют гарантировать отсутствие UB от разыменования и использования освобождённого.

Да, только старое говно никуда не делось. В этом проблема C++ – он пытается быть обратно совместим с C.

Только до тех пор, пока не используешь unsafe.

Нет. Даже в блоках unsafe{} в Rust нет такого безумия, как UB в C. Например, можно распечатать указатель на освобождённую память. Да и проверки на NULL никто не выкидывает.

Писал лет десять назад. С тех пор что-то сильно поменялось?

В том-то и проблема, что нет. Как говнокодили без лишних мыслей в головах, так и говнокодят. 70% дыр в сишном и плюсовом коде всё ещё вызваны проблемами с управлением памятью.

Исходная версия hateyoufeel, :

Умные указатели позволяют гарантировать отсутствие UB от разыменования и использования освобождённого.

Да, только старое говно никуда не делось. В этом проблема C++ – он пытается быть обратно совместим с C.

Только до тех пор, пока не используешь unsafe.

Нет. Даже в блоках unsafe{} в Rust нет такого безумия, как UB в C. Например, можно распечатать указатель на освобождённую память. Да и проверки на NULL никто не выкидывает.