언어 자료구조 알고리즘/Escort C++

[C++] 무효화 된 멤버 사용하기

언제나휴일 2016. 4. 15. 14:15
반응형

5.2.1 무효화 된 멤버 사용하기

 

 기반 클래스에 특정 메서드의 행위를 파생 클래스에서 해당 행위도 하고 다른 행위도 하게 하려고 할 때에는 어떻게 구현해야 할까요? 이 경우에는 무효화 된 기반 클래스의 멤버 메서드를 파생된 곳에서 기반 클래스 명과 스코프 연산자를 붙여 메서드를 호출하면 무효화 된 멤버를 사용할 수 있습니다.

 

 앞선 예제에서 EH 프로그래머의 프로그래밍 메서드를 시간을 입력 인자로 받는 것으로 수정하고 해당 행위에서는 먼저 "생각한 것을 문서화 한다."를 수행하고 기반 클래스에 무효화 된 메서드를 활용하는 예제를 보여 드리겠습니다. Programmer.h Programmer.cpp는 같다고 했을 때 바뀌는 부분만 살펴봅시다.

 

EHProgrammer.h

#pragma once

#include "Programmer.h"

 

class EHProgrammer:

    public Programmer

{

public:

    EHProgrammer(void);

    ~EHProgrammer(void);

    void Programming(int tcnt);

};

 

 

EHProgrammer.cpp

#include "EHProgrammer.h"

EHProgrammer::EHProgrammer(void)

{

}

 

EHProgrammer::~EHProgrammer(void)

{

}

void EHProgrammer::Programming(int tcnt)

{

    cout<<"생각을 하고 이를 문서화한다."<<endl;

    Programmer::Programming(tcnt);

}

  

Test.cpp

#include "EHProgrammer.h"

 

void main()

{

    EHProgrammer *ehclub = new EHProgrammer();

    ehclub->Programming(3);

    delete ehclub;

}



[그림 5.6]

 

[그림 5.6]을 보면 무효화 된 메서드도 수행됨을 확인할 수 있습니다.


5장 

(모든 동영상 강의는 무료입니다.)

반응형