1. 구조체의 유용성
 - 관련 있는 데이터를 하나의 자료형으로 묶을 수 있다.
 - 프로그램의 구현 및 관리가 용이해진다.

 

2. C 언어의 구조체에 대한 불만
 - 기본 자료형으로 인식해 주지 않는다.

struct Person{
    int age;
    char name[10];
};

int main()
{
    int a=10;
    Person p;    // struct Person p;
    return 0;
}

 

3. 함수를 넣으면 좋은 구조체
 - 프로그램=데이터+데이터 조작 루틴(함수)
 - 잘 구성된 프로그램은 데이터와 더불어 함수들도 부류를 형성

 

struct Account {
    char accID[20];   
    char secID[20];
    char name[20];    
    int balance;      

    void Deposit(int money){
        balance+=money;
    }
    void Withdraw(int money){
        balance-=money;
    }
};

 

4. 구조체가 아니라 클래스(Class)
 - 클래스 = 멤버 변수 + 멤버 함수
 - 변수가 아니라 객체(Object: 완전한 대상체)
 
5. 데이터 추상화 이후의 클래스화
 - 추상화된 데이터를 가지고 사용자 정의 자료형을 정의하는 것

 

위의 struct Account {...}의 경우
데이터 = 계좌번호, 비밀번호, 이름, 잔액
기능 = 입금, 출금

 

6. 클래스의 내부 접근과 외부 접근
public, protected, private

 

7. 멤버함수의 외부 정의

class Door{
private:
    int state;

public:
    void Open();
    void Close();
    void ShowState();
};

void Door::Open(){
   state=OPEN;
}
void Door::Close(){
   state=CLOSE;
}
void Door::ShowState(){
   ...
}


 
 
 
 
 
 
 
 

'C,C++' 카테고리의 다른 글

Query Performance Counter  (0) 2015.12.22
열혈강의C++ 2장 요약  (0) 2015.09.15
열혈강의C++ 1장 요약  (0) 2015.09.15

+ Recent posts