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

C++의 is_const 템플릿

<시간/>

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

C++의 is_const 템플릿은 정의된 유형이 const 수식 유형인지 여부를 확인하는 데 사용됩니다.

const 수식 유형이란 무엇입니까?

유형의 값이 상수일 때 유형을 const-qualified라고 합니다. 상수 데이터 유형은 const에서 값이 초기화되면 프로그램 전체에서 변경하거나 변경할 수 없는 유형입니다.

구문

template <class T> is_const;

매개변수

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

반환 값

부울 값을 반환하고, 주어진 유형이 const 한정자이면 true를 반환하고, 주어진 유형이 const 한정자가 아니면 false를 반환합니다.

예시

Input: is_const<const int>::value;
Output: True
Input: is_const<int>::value;
Output: False

예시

#include <iostream>
#include <type_traits>
using namespace std;
int main() {
   cout << boolalpha;
   cout << "checking for is_const template: ";
   cout << "\nInt : "<<is_const<int>::value;
   cout << "\nConst int : "<< is_const<const int>::value;
   cout << "\nConst int& : "<< is_const<const int&>::value;
   return 0;
}

출력

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

checking for is_const template:
Int : false
Const int : true
Const int& : false

예시

#include <iostream>
#include <type_traits>
using namespace std;
int main() {
   cout << boolalpha;
   cout << "checking for is_const template: ";
   cout << "\nFloat : "<<is_const<float>::value;
   cout << "\nChar : "<<is_const<char>::value;
   cout << "\nFloat *: "<<is_const<float*>::value;
   cout << "\nChar *: "<<is_const<char*>::value;
   cout << "\nConst int* : "<< is_const<const int*>::value;
   cout << "\nint* const : "<< is_const<int* const>::value;
   return 0;
}

출력

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

checking for is_const template:
Float : false
Char: false
Float *: false
Char *: fakse
Const int* : false
int* const: true