C++ 에서 가장 핵심 개념 중 하나가 바로 Object, 객체 이다.
C++은 객체 지향 언어인데, 이 객체 지향 언어 할 때 객체를 설명하려고 한다.
클래스 Vs 객체
클래스는 이전 포스팅에서 언급했듯이, 구조체와 비슷한 개념으로, 어떠한 개념 및 속성을 한 데 묶어 사용자에게 편의성을 제공해 준다.
그럼 객체는 무엇일까?
객체는 "클래스를 자료형으로 하는 변수" 정도로 생각할 수 있다.
이해를 쉽게 하기 위해, 여기 어떠한 클래스 한 개가 존재한다고 하자.
class person {
public:
int registration_id;
char name[20];
char address[50];
void show_person()
{
cout << name << "\n";
cout << registration_id << "\n";
cout << address << "\n";
};
이 person 이라는 클래스는, 어떤 사람의 주민번호, 이름, 주소를 표현할 수 있는 자료형이다.
그럼 여기서 객체를 한번 표현해 보겠다.
persion Gloria;
Gloria.id = 841211;
strcpy(Gloria.name, "Gloria Lee");
strcpy(Gloria.address, "서울시 구로구 구로동");
바로 이렇게 객체에다가, 객체의 속성을 부여할 수 있다.
실생활과 매우 유사하지 않은가?? -_-
그리고 Gloria라는 객체의 속성을 화면에 출력해 주고 싶다면,
Gloria.show_persion();
을 호출해 주기만 하면 되는 것이다!!! 그럼 다음과 같이 출력될 것이다.
Gloria Lee
841211
서울시 구로구 구로동
이 예제 하나로도 충분히 객체에 대한 개념이 잡힐 수 있을 것이다. ^^
'Backend > C++' 카테고리의 다른 글
클래스?구조체? (0) | 2012.04.13 |
---|---|
C++, 객체지향 언어! (0) | 2012.04.12 |