我经常遇到这样的情况:
if (A && B)
{
C();
}
else
{
D();
}
但是当A
是时constexpr
,没有办法向 if 语句表明 if B
is not also constexpr
。此外,启用使用的解决方法constexpr
是丑陋的:
if constexpr (A)
{
if (B)
{
C();
}
else
{
D();
}
}
else
{
D();
}
是否有使constexpr if
陈述更灵活的建议,即。考虑哪些条件是constexpr
?如果没有,除了假设编译器会做正确的事情(他们并不总是这样做)之外,是否有解决这种情况的方法。