#include<iostream>
using namespace std;
class base
{
public:
virtual void f(){}
};
class middle1:public base
{};
class middle2:public base
{};
class derive:public middle1,public middle2
{};
int main()
{
derive* pd=new derive();
pd->f();
return 0;
}
저는이 가상이이 문제를 해결하지만 그 방법을 알고 있습니까? 다중 상속이 없더라도 안전을 위해 공개 가상을 작성할 수 있습니까?클래스 A와 공용 가상 B와 클래스 A의 차이점은 무엇입니까? public B
virtual은 메소드와 멤버 변수의 복사본을 middle2가 아닌 base에서 가져옵니다. – Prasad