구조체
typedef struct tagInfo
{
string strName;
int iHp;
int iAttack;
int iDef;
}INFO, INFO1, INFO2, INFO3; //자료형 이름을 여러개 선언할 수 있다.
INFO라는 사용자 정의형 자료형을 선언할 수 있다.
INFO info; //객체 선언 방법
typedef A B //A를 B의 이름으로 쓸 수 있다. 암묵적으로 대문자로 쓴다.
info.strName = "홍길동" (. 접근연산자를 이용해서 멤버변수에 접근한다.)
cout << info.strName << endl;
c++에서 구조체는 기본 접근권한이 public으로 되어있는것을 제외하고는 class와 기능이 동일하다.
사용자정의 자료형 종류
1.구조체
2.공용체 //보안성 취약, 버그의 위험성
3.열거형
열거형의 사용 예
enum color {RED=1, GREEN=3, BLUE=5}
enum color c1 = RED;
enum color c2 = GREEN;
enum color c3 = BLUE;
cout << "열거형 변수 출력: " << c1 << c2 << c3 << endl;
cout <<" 상수 출력: " << RED << GREEN << BLUE << endl;
결과: 열거형 변수 출력: 1, 3, 5
상수 출력: 1, 3, 5
//-------------------------------------------------------
call by value, call by reference
Swap(int a, int b) //얕은 복사의 예
{
int temp =a;
a = b;
b = temp;
}
Swap(int* a, int* b) //깊은 복사의 예
{
int temp;
temp = *a;
*a = *b;
*b = temp;
}
'Programming > C & C++' 카테고리의 다른 글
파일 입출력, 분할 컴파일 (0) | 2014.06.02 |
---|---|
동적할당, 해제 (0) | 2014.06.01 |
함수 (0) | 2014.06.01 |
배열, 문자열, 포인터 (0) | 2014.06.01 |
분기문, 반복문 (0) | 2014.06.01 |