c++ 다항성과 가상 함수

c++ 다항성과 가상 함수

작성일 2020.12.05댓글 1건
    게시물 수정 , 삭제는 로그인 필요

#include <iostream>
using namespace std;

class Weapon {
public:
void print() { cout << "무기가 설치됨" << endl; }
};
class Bomb : public Weapon {
public:
void print() { cout << "폭탄이 설치됨" << endl; }
};

class Gun : public Weapon {
public:
void print() { cout << "총이 설치됨" << endl; }
};

int main()
{
Weapon* w = new Weapon;
Weapon* b = new Bomb;
Weapon* g = new Gun;

w->print();
b->print();
g->print();
return 0;
}

를 디버깅하면 

"무기가 설치됨"
"무기가 설치됨"
"무기가 설치됨" 이렇게 출력이 되는데 서로 다른 메시지가 출력되게 하려면 코드를 어떻게 고쳐야 할까요..?



profile_image 익명 작성일 -

virtual 키워드 사용하세요. virtual void print()

C++과 JAVA, 파이썬 이 세가지

... C 언어는 뛰어난 이식성과 작은 언어 사양, 비트 조작... C와 C++의 차이점 ■ 함수 정의에 관련된 차이 C... 자바 가상 머신만 바꿔주면 소스 코드나 재컴파일 과정 없이...

컴퓨터 언어

... C 언어는 뛰어난 이식성과 작은 언어 사양, 비트 조작... C와 C++의 차이점 ■ 함수 정의에 관련된 차이 C... 자바 가상 머신만 바꿔주면 소스 코드나 재컴파일 과정 없이...

프로그래머분들 봐주세요

... 그리고 제가 열심히 한다면 몇달안에 성과가... [C, C++, JAVA ] 이 셋은 C Family라고 부릅니다. 언어의 모태를... 순수 가상 함수 · 파일입출력 - 텍스트 파일, 이진파일...

졸업을 앞둔 학생입니다,

... C 언어는 뛰어난 이식성과 작은 언어 사양, 비트 조작... C와 C++의 차이점 ■ 함수 정의에 관련된 차이 C 언어에서... 자바 가상 머신만 바꿔주면 소스 코드나 재컴파일 과정...

코딩 교육 프로그램 개발에 대하여..

... C 언어는 뛰어난 이식성과 작은 언어 사양, 비트 조작... C와 C++의 차이점 ■ 함수 정의에 관련된 차이 C... 자바 가상 머신만 바꿔주면 소스 코드나 재컴파일 과정 없이...

해커가 되려면.......(진지) 내공 만땅!

... C,C++,JAVA 등과 같은 프로그램 언어쪽은 필수로 마스터... 가장 중요한건 정직함과 성실함, 윤리 성과... 함수 · 가상함수 · Cin cobject · count cobject · 입력과 출력제어...