最終更新日時:
が更新

履歴 編集

variable
<limits>

std::numeric_limits::is_signed

// C++03
static const bool is_signed;

// C++11
static constexpr bool is_signed;

概要

Tが符号付き型であるなら、is_signedtrueとなり、そうでなければfalseとなる。
is_specialized == falseの場合、is_signedfalseとなる。

#include <limits>

int main()
{
  constexpr bool a = std::numeric_limits<int>::is_signed;
  constexpr bool b = std::numeric_limits<unsigned int>::is_signed;

  static_assert(a, "must be signed");
  static_assert(!b, "must be unsigned");
}

出力