본문 바로가기

객체지향

클래스와 상속

반응형


[1]의 경우 




[2]의 경우 





[3]의 경우

 


[4]의 경우 




C++에서 모든 데이터 멤버와 메서드는 기본적으로 private 이다.

 public 키워드를 사용하면 그 값을 변경할 수 있다. 





#include<iostream>

using namespace std;


#define NAME_SIZE 50 //매크로 정의 


class Person {

int id;//모든 멤버는 기본적으로 private

char name[NAME_SIZE];


public:

void aboutMe()

{

cout << "I am a person.";

}

};


class Student : private Person {

public:

void aboutMe()

{

cout << "I am a Student.";

}

};


int main()

{

Person *p = new Student();

p->aboutMe(); //private로 인해 에러 발생 ! 

delete p; //할당 받은 메모리를 반환하는 것이 중요 !

return 0;

}







출처 :코딩 인터뷰 189가지 프로그래밍 문제와 해법 완전 분석 


반응형

'객체지향' 카테고리의 다른 글

추상화와 인터페이스  (0) 2018.08.23
객체지향 알아 둘 것  (0) 2018.03.27
포인터와 참조  (0) 2018.03.27
가상소멸자  (0) 2018.03.27
가상함수  (0) 2018.03.26