我试着学习一点关于模板元编程和目前我在玩可变参数模板。在他的演讲“VariadicTemplatesareFunadic”中,Alexandrescu介绍了一个小元组实现,我尝试构建并可能扩展一个一点。(我知道这是一个玩具示例,我只是尝试学习一点关于c++的更多信息)。但是,我对他的代码有一个小问题。这里是:templateclasstuple{};templatestructtuple_element;templatestructtuple_element>{typedefTtype;};templatestructtuple_element>{typedeftypenametupl
这个问题在这里已经有了答案:Scope(failure)inC++11?(2个回答)关闭9年前。毫无疑问,很多人都熟悉Alexandrescus先生的ScopeGuard模板(现在是Loki的一部分)和这里介绍的新版本ScopeGuard11:http://channel9.msdn.com/Shows/Going+Deep/C-and-Beyond-2012-Andrei-Alexandrescu-Systematic-Error-Handling-in-C这里有来源:https://gist.github.com/KindDragon/4650442在2012年及以后的c++演讲中
所以我遇到了这个(恕我直言)非常好的想法,即使用返回值和异常的复合结构-Expected.它克服了传统错误处理方法(异常、错误代码)的许多缺点。见AndreiAlexandrescu'stalk(SystematicErrorHandlinginC++)和itsslides.异常和错误代码的使用场景基本相同,函数返回值和不返回值。Expected另一方面,它似乎只针对返回值的函数。所以,我的问题是:你们有没有试过Expected在实践中?您如何将这个习惯用法应用于不返回任何内容的函数(即void函数)?更新:我想我应该澄清一下我的问题。Expected特化是有道理的,但我对如何使用它更