임 다음특정 항목을 출력하기 위해 가상으로 있어야하는 기능은 무엇입니까? 출력하려고
apple
banana
orange
banana
내가 출력하기 위해 제 기능을 가상 수 있도록해야합니까?
class Red
{
public:
void PrintMe() { Foo(); Bar(); }
void Foo() { printf("pear\n"); }
void Bar() { printf("lemon\n"); }
};
class Green : public Red
{
public:
void PrintMe() { Bar(); Foo(); }
void Foo() { printf("apple\n"); }
void Bar() { printf("banana\n"); }
};
class Blue : public Green
{
public:
void Foo() { printf("orange\n"); }
void Bar() { printf("grape\n"); }
};
int main(int argc, char* argv[])
{
Green g;
Blue b;
Red *pR1 = &g;
Red *pR2 = &b;
pR1->PrintMe();
pR2->PrintMe();
}
이 아픈 질문을 닫기로 투표했습니다. 대답 할 수있는 문제가 너무 많습니다. –
-1의 투표 결과를 닫거나 그에 동의하지 않겠습니다. 이 질문에는 두 가지 정답이 있습니다 (예 및 기타 문제 또는 아니오). 생각할 거리. –
$ 20 OP는 어떤 대답도 선택하지 않으며 질문을 결코 의미있게 수정하지 않는다고 말합니다. –