C++ 参考手册

static const bool is_signed;
(C++11 前)
static constexpr bool is_signed;
(C++11 起)

std::numeric_limits<T>::is_signed 的值对所有有符号算数类型 Ttrue ,而对无符号类型为 false 。此常量对所有特化有意义。

标准特化

 
T std::numeric_limits<T>::is_signed 的值
/* non-specialized */ false
bool false
char 实现定义
signed char true
unsigned char false
wchar_t 实现定义
char8_t false
char16_t false
char32_t false
short true
unsigned short false
int true
unsigned int false
long true
unsigned long false
long long true
unsigned long long false
float true
double true
long double true

参阅

(C++11)
检查类型是否为有符号算术类型
(类模板)
[静态]
鉴别整数类型
(公开静态成员常量)
[静态]
鉴别准确表示的类型
(公开静态成员常量)
[静态]
鉴别表示有限值集合的类型
(公开静态成员常量)