【发布时间】:2017-09-19 03:47:17
【问题描述】:
在特定的类中,
它正在工作..
private:
template <typename U>
int64_t parseValue(const std::string& str
, typename std::enable_if<std::is_signed<T>::value, U>::type* = 0
) const
{
return stoll(str, 0, base_);
}
template <typename U>
uint64_t parseValue(const std::string& str
, typename std::enable_if<std::is_unsigned<T>::value, U>::type* = 0
) const
{
但下面的代码不起作用。我不知道为什么。不知道是缺少专业化概念还是其他问题。
private:
template <typename U>
int64_t parseValue(const std::string& str
, typename std::enable_if<std::is_signed<T>::value>::type* = 0
) const
{
return stoll(str, 0, base_);
}
template <typename U>
uint64_t parseValue(const std::string& str
, typename std::enable_if<std::is_unsigned<T>::value>::type* = 0
) const
它不工作。
你能解释一下吗?不知道为什么。。
【问题讨论】:
-
你能发一个minimal reproducible example吗?我可以猜到为什么它不起作用,但如果没有完整的例子,这只是一个猜测。