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

时间:2015-05-22 20:20:08

标签: c++ c++14 c++17 scopeguard

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

2 个答案:

答案 0 :(得分:9)

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

最新"当前论文状态" LWG于2013年,在上述日期之前。

C ++ 1z(希望是C ++ 17)的内容尚未确定。

C++1z status for clang没有提到它。 C++1z TS for clang没有提到它。

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

答案 1 :(得分:9)

It would appear当前版本的范围退出文件P0052将进入Library Fundamentals v3,以便在帖子 -C ++中采用17标准。

简而言之,C ++ 17不会发生。遗憾。