Будет ли стандартизация идиом охранника / выхода из области видимости?
Запуск лямбды на выходе из области видимости кажется такой простой вещью, я бы ожидал, что она будет стандартизирована. Вещи как unique_ptr
лучше, когда они применяются, но я считаю, что существует бесконечный запас "одноразовых" деструкторов, особенно при использовании библиотек в стиле C. Кто-нибудь знает, будет ли это?
2 ответа
n4189 есть предложение добавить make_scope_exit
оболочки и другие подобные обработчики ресурсов для языка. Он основан на относительно известных scope_guard
говорить.
Самый последний "текущий статус бумаги" от LWG - в 2013 году, до указанной даты.
Содержимое C++1z (возможно, C++17) еще не определено.
Статус C++ 1z для clang не упоминает об этом. C++ 1z TS для clang не упоминает об этом.
Сам документ содержит пример реализации. Я не знаю, на каких условиях лицензирования он находится.