范围保护/范围退出成语是否会标准化?

Voi*_*tar 8 c++ scopeguard c++14 c++17

在范围退出上运行lambda似乎是一个基本的东西,我希望它是标准化的.unique_ptr当它们适用时,情况会更好,但我发现需要无穷无尽的"一次性"析构函数,特别是在利用C风格的库时.有谁知道这是否会到来?

Yak*_*ont 9

n4189是一个make_scope_exit向该语言添加包装器和其他类似资源处理程序的提议.它基于相对着名的scope_guard谈话.

LWG最近的"当前论文状态"是在上述日期之前的2013年.

C++ 1z(希望是C++ 17)的内容还有待确定.

clang的C++ 1z状态没有提到它. 用于clang的C++ 1z TS没有提到它.

该论文本身包含一个示例实现.我不知道它的许可条款是什么.

  • 它[似乎已经通过了LEWG](https://issues.isocpp.org/show_bug.cgi?id=6),但看起来它需要更好的措辞才能被采用.N4189的措辞非常糟糕. (3认同)

Nic*_*las 9

看来,范围退出文件P0052的当前版本将进入Library Fundamentals v3,以便在Post -C++ 17标准中采用.

简而言之,C++ 17不会发生.抱歉.