下面的代码不visual C++编译,因为“表达的结果不是一个常量”。
constexpr auto func() {
for (unsigned long long i = 1; i < 10000000UL; ++i);
return 123;
}
constexpr auto f = func();
在一般情况下,需要太长的时间来计算,表达式不能进行constexpr
。是否有可能给编译器更多的时间来评估这些“困难” constexpr
essions?
该选项/constexpr:steps
正是描述了编译器能维持多久想想constexpr
essions的选项。