LINUX.ORG.RU

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

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

Да не гони, всё верно первый анонимус делает.

handle_as_ptr с его конструктором нужен, чтобы тип был NullablePointer, это требование unique_ptr.

А static_assert проходит, потому что unique_ptr<T,Deleter> хранит не T*, а Deleter::pointer.

Как по мне, так первый анонимус знает толк в извращениях, но мне было б лениво постоянно писать file_descriptor.get().

P.S. Первому анонимусу спасибо, фишку с Deleter::pointer я не знал.

Исправление JaM, :

Да не гони, всё верно первый анонимус делает.

handle_as_ptr с его конструктором нужен, чтобы тип был NullablePointer, это требование unique_ptr.

А static_assert проходит, потому что unique_ptr<T,Deleter> хранит не T*, а Deleter::pointer.

Как по мне, так первый анонимус знает толк в извращениях, но мне было б лениво постоянно писать file_descriptor.get().

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

Да не гони, всё верно первый анонимус делает. handle_as_ptr с его конструктором нужен, чтобы тип был NullablePointer, это требование unique_ptr. А static_assert проходит, потому что unique_ptr<T,Deleter> хранит не T*, а Deleter::pointer.

Как по мне, так первый анонимус знает толк в извращениях, но мне было б лениво постоянно писать file_descriptor.get().