constexpr int ipow(int x, int n) {
return (n > 0) ? x * ipow(x, n - 1): 1;
}
template <char c>
constexpr int b3_helper() {
static_assert(c < '3', "not a ternary digit");
return c - '0';
}
template <char c, char... chars>
constexpr int b3_helper() {
static_assert(c < '3', "not a ternary digit");
return ipow(3, sizeof...(chars)) * (c - '0') + b3_helper<chars...>();
}
template <char... chars>
constexpr int operator"" _b3() {
return b3_helper<chars...>();
}
int main(){
int i = 201_b3;
return 0;
}
компилятор говоритчто случилось с последующим расширением пакета?
вызов «b3_helper» неоднозначно»в строке 12;?
, как я могу это исправить я нахожу эту проблему, когда я узнаю ++ язык программирования 4th C на странице 560
я сожалею. моя ошибка. – Sherwin