C++언어에서는 신뢰성에 문제가 되지 않는 범위에서 사용자에게 많은 편의성을 제공하고 있어요.
특히 태그 명을 형식 명으로 사용할 수 있어서 변수 선언에 태그 명을 사용할 필요가 없어요. 태그 명은 구조체, 공용체, 열거형을 정의할 때 사용하는 struct, union, enum 과 같은 키워드예요. C언어에서는 태그 명을 형식 명으로 사용할 수 없어서 struct, union, enum 같은 키워드도 같이 사용해서 변수를 선언해야 하죠. 이러한 불편함을 덜기 위해 typedef 문을 통해 형식 명을 정의해서 사용했어요.
하지만 C++에서는 태그 명을 그대로 형식 명으로 사용할 수 있어요.
//태그 명을 형식 명으로 사용 //Program.cpp #include <iostream> using namespace std; enum Gender { FEMALE, MALE }; struct StuInfo { int num; char name[20]; }; int main() { Gender g = MALE; //태그 명인 Gender를 형식 명으로 사용 StuInfo si = {2,"홍길동"}; //태그 명인 StuInfo를 형식 명으로 사용 cout<<"성별(0-여성, 1-남성):"<<g<<endl; cout<<"학생 번호:"<<si.num<<" 이름:"<<si.name<<endl; return 0; }
▷ 실행 결과
성별(0-여성, 1-남성): 1 학생 번호:2 이름:홍길동