Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++의 is_unsigned 템플릿

<시간/>

이 기사에서는 C++ STL에서 std::is_unsigned 템플릿의 작동, 구문 및 예제에 대해 논의할 것입니다.

is_unsigned는 헤더 파일 아래에 있는 템플릿입니다. 이 템플릿은 주어진 유형 T가 서명되지 않은 유형인지 여부를 확인하는 데 사용됩니다.

C++에서 부호 없는 데이터 유형이란 무엇입니까?

부호 없는 데이터 유형은 롤 번호, 난수의 ID 등과 같이 값이 음수가 되지 않는다는 것을 알고 사용하는 데이터 유형입니다.

유형을 unsigned로 만들기 위해 −

와 같은 데이터 유형의 접두사로 unsigned 키워드를 사용합니다.

서명되지 않은 정수;

부호 없는 부동 소수점;

구문

template <class T>is_unsigned;

매개변수

템플릿은 T 유형의 매개변수만 가질 수 있으며 T가 unsigned 유형인지 여부를 확인합니다.

반환 값

Boolean 값을 반환하고, 주어진 유형이 unsigned 유형이면 true를 반환하고, unsigned 유형이 아니면 false를 반환합니다.

예시

Input: is_unsigned<unsigned int>::value;
Output: True

Input: is_unsigned<int>::value;
Output: False

예시

#include <iostream>
#include <type_traits>
using namespace std;
class TP {
};
enum TP_1 : int {};
enum class TP_2 : int {};
int main() {
   cout << boolalpha;
   cout << "checking for is_unsigned:";
   cout << "\nint:" << is_unsigned<int>::value;
   cout << "\nTP:" << is_unsigned<TP>::value;
   cout << "\nTP_1:" << is_unsigned<TP_1>::value;
   cout << "\nTP_2:" << is_unsigned<TP_2>::value;
   return 0;
}

출력

위의 코드를 실행하면 다음 출력이 생성됩니다 -

checking for is_unsigned:
Int: false
TP: false
TP_1: false
TP_2: false

예시

#include <iostream>
#include <type_traits>
using namespace std;
int main() {
   cout << boolalpha;
   cout << "checking for is_unsigned:";
   cout << "\nfloat:" << is_unsigned<float>::value;
   cout << "\nSigned int:" << is_unsigned<signed int>::value;
   cout << "\nUnsigned int:" << is_unsigned<unsigned int>::value;
   cout << "\ndouble:" << is_unsigned<double>::value;
   return 0;
}

출력

위의 코드를 실행하면 다음 출력이 생성됩니다 -

checking for is_signed:
Float: false
Signed int: false
Unsigned int: true
Double: false