【发布时间】:2017-04-24 11:55:00
【问题描述】:
我想在编译时使用constexpr if 进行分支,但最新的MSVC 编译器似乎不支持它。是否有以下替代方案?:
template<typename T>
void MyFunc()
{
if constexpr(MeetsConditions<T>::value)
{
FunctionA<T>();
}
else
{
FunctionB<T>();
}
}
简而言之:当编译器不支持constexpr if时,我可以模拟它吗?
【问题讨论】:
-
这是一个 c++17 功能
-
是的,我知道,问题是最新的 MSVC 不完全支持 C++17。
标签: c++ template-meta-programming c++17