【发布时间】:2016-10-13 21:16:40
【问题描述】:
constexpr 函数的定义应满足以下要求:
[...]
- 其函数体应为 = delete、 = 默认或 [...]
这意味着下面的类 sn-p 是有效的:
struct S {
constexpr void f() = delete;
};
删除constexpr 函数的目的是什么?
如果有的话,定义它constexpr 有什么好处?
我想不出任何原因,但事实上在标准中允许它比禁止它更容易。
【问题讨论】:
-
delete任何函数都是禁用特定过载的简单方法。我想它也应该应用于constexpr系列函数。 -
constexpr对于返回void的函数也很有趣。 -
@Jarod42 Touché。用于创建一个 mvce,这对它来说很好,但它确实很有意义。