Я новичок в мета-программировании шаблона обучения в C ++ и внедрил несколько основных программ, таких как поиск GCD и другая версия проверки того, является ли число главным. Однако, когда я внедрил следующий подход, кажется, что мое состояние разрыва не работает. Может ли кто -нибудь помочь мне с этим? < /P>
template
struct IsPrimeUtil2 {
inline static constexpr bool value = (d * d > p) ? true : (p % d != 0 && IsPrimeUtil2::value);
};
template
struct IsPrime {
// inline static constexpr bool value = IsPrimeUtil::value;
inline static constexpr bool value = (p < 2) ? false : (p < 4 ? true : IsPrimeUtil2::value);
};
int main() {
static_assert(IsPrime::value == true);
// static_assert(IsPrime::value == true);
return 0;
}
Подробнее здесь: https://stackoverflow.com/questions/793 ... maximum-de
Мобильная версия