이 기사에서는 C++ STL에서 std::is_empty 템플릿의 작동, 구문 및 예제에 대해 논의할 것입니다.
is_empty는
빈 수업이란 무엇입니까?
클래스에 저장된 데이터가 없을 때 클래스는 비어 있는 것으로 알려져 있습니다. 빈 클래스는 다음을 충족합니다. -
- 길이가 0인 비트 필드 외에 비정적 멤버가 없어야 합니다.
- 가상 기본 클래스나 가상 기능이 없어야 합니다.
- 기본 클래스가 없어야 합니다.
구문
템플릿is_empty;
매개변수
템플릿은 클래스 T의 매개변수만 가질 수 있으며 클래스 T가 빈 클래스인지 확인합니다.
반환 값
Boolean 값을 반환하고, 주어진 유형이 빈 클래스이면 true를 반환하고, 빈 클래스가 아니면 false를 반환합니다.
예
입력:클래스 A{}; is_empty::값; 출력:trueInput:클래스 B{ 무효 fun() {} }; is_empty::value;출력:true
예
#include#include 네임스페이스 std;class TP_1 {};class TP_2 { int var;};class TP_3 { static int var;};class TP_4 { ~TP_4();};int 메인() { cout < ::value; cout <<"\n변수가 하나인 클래스에 대한 is_empty 템플릿 확인:"< ::value; cout <<"\n하나의 정적 변수가 있는 클래스의 is_empty 템플릿 확인:"< ::value; cout <<"\n생성자가 있는 클래스의 is_empty 템플릿 확인:"< ::value; 반환 0;}
출력
위의 코드를 실행하면 다음과 같은 출력이 생성됩니다 -
변수가 없는 클래스에 대한 is_empty 템플릿 확인:변수가 하나인 클래스에 대한 is_empty 템플릿에 대한 truechecking:하나의 정적 변수가 있는 클래스에 대한 is_empty 템플릿에 대한 falsechecking:생성자가 있는 클래스에 대한 is_empty 템플릿에 대한 truechecking:true사전>예
#include#include 네임스페이스 사용 std;struct TP_1 {};struct TP_2 { int var;};struct TP_3 { static int var;};struct TP_4 { ~TP_4();};int 메인() { cout < ::value; cout <<"\n변수가 하나인 구조에 대한 is_empty 템플릿 확인:"< ::value; cout <<"\n하나의 정적 변수가 있는 구조에 대한 is_empty 템플릿 확인:"< ::value; cout <<"\n생성자가 있는 구조의 is_empty 템플릿 확인:"< ::value; 반환 0;} 출력
위의 코드를 실행하면 다음과 같은 출력이 생성됩니다 -
변수가 없는 구조에 대한 is_empty 템플릿 확인:변수가 하나인 구조에 대한 is_empty 템플릿에 대한 truechecking:하나의 정적 변수가 있는 구조에 대한 is_empty 템플릿에 대한 falsechecking:생성자가 있는 구조에 대한 is_empty 템플릿에 대한 truechecking:true사전>