我想在模板中使用未签名的T:声明一个“无符号T”
template<class T>
void signed2unsigned(const T* source, unsigned T* dest, size_t n)
{
do
{
intmax_t s=*source;
s+=min(*source);
*dest=s;
++dest;
++source;
--n;
}
while(n!=0);
}
这是不行的,因为签名没有T型前扩展到unsigned int的考虑。除了引入U并在文档中写入U必须是未签名的T之外,是否有解决方法?
如何['标准:: make_unsigned'(http://en.cppreference.com/w/cpp/types/make_unsigned)? – 2013-04-04 08:33:08