异常规范是SFINAE中直接上下文的一部分吗?

时间:2018-03-20 20:01:31

标签: c++ language-lawyer sfinae noexcept

这是对以下问题的跟进:SFINAE in variadic constructor

我写了一些代码,比如

StrongAlias
T不能从参数类型构造的情况下,

会禁用fileList[i].Replace(filePath, $"{path}Builds/") 构造函数,但是另一个用户告诉我这不会起作用,因为异常规范不是&n #39; t直接背景的一部分。

异常规范不是直接上下文的一部分吗?我不明白为什么会这样。

1 个答案:

答案 0 :(得分:0)

正如T.C.在comment中,否。根据{{​​3}}:

  

[注意:”异常规范中的等效替换为   仅当实例化 noexcept-specifier 时才执行   如果替换导致程序出现错误,则表明程序格式不正确   无效的类型或表达式。 — 尾注]