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

C++의 is_fundamental 템플릿

<시간/>

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

is_ basic은 헤더 파일 아래에 있는 템플릿입니다. 이 템플릿은 주어진 유형 T가 기본 데이터 유형인지 여부를 확인하는 데 사용됩니다.

기본 유형이란 무엇입니까?

기본 유형은 컴파일러 자체에서 이미 선언된 기본 제공 유형입니다. int, float, char, double 등과 같이 내장 데이터 유형이라고도 합니다.

클래스, 열거형, 구조체, 참조 또는 포인터와 같이 사용자 정의된 모든 데이터 유형은 기본 유형의 일부가 아닙니다.

구문

template <class T> is_fundamental;

매개변수

템플릿은 T 타입의 파라미터만 가질 수 있으며, 주어진 타입이 최종 클래스 타입인지 확인합니다.

반환 값

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

예시

Input: class final_abc;
   is_fundamental<final_abc>::value;
Output: False

Input: is_fundamental<int>::value;
Output: True

Input: is_fundamental<int*>::value;
Output: False

예시

#include <iostream>
#include <type_traits>
using namespace std;
class TP {
   //TP Body
};
int main() {
   cout << boolalpha;
   cout << "checking for is_fundamental:";
   cout << "\nTP: "<< is_fundamental<TP>::value;
   cout << "\nchar :"<< is_fundamental<char>::value;
   cout << "\nchar& :"<< is_fundamental<char&>::value;
   cout << "\nchar* :"<< is_fundamental<char*>::value;
   return 0;
}

출력

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

checking for is_fundamental:
TP: false
char : true
char& : false
char* : false

예시

#include <iostream>
#include <type_traits>
using namespace std;
int main() {
   cout << boolalpha;
   cout << "checking for is_fundamental:";
   cout << "\nint: "<< is_fundamental<int>::value;
   cout << "\ndouble :"<< is_fundamental<double>::value;
   cout << "\nint& :"<< is_fundamental<int&>::value;
   cout << "\nint* :"<< is_fundamental<int*>::value;
   cout << "\ndouble& :"<< is_fundamental<double&>::value;
   cout << "\ndouble* :"<< is_fundamental<double*>::value;
   return 0;
}

출력

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

checking for is_fundamental:
int: true
double : true
int& : false
int* : false
double& : false
double* : false