e4.cpp

来自「能理解C++中运算符重载的需要性」· C++ 代码 · 共 46 行

CPP
46
字号
#include<iostream.h>          

class Furniture
{
public:
	Furniture(){}
	void SetWeight(int i){weight=i;}
	int GetWeight(){return weight;}
protected:
	int weight;
};
class Bed:virtual public Furniture
{
public:
	Bed(){}
	void Sleep()
	{
		cout<<"Sleep..."<<endl;
	}
};
class Sofa:virtual public Furniture
{
public:
	Sofa(){}
	void WatchTV()
	{
		cout<<"Watching TV."<<endl;
	}
};
class SleepSofa:public Bed,public Sofa
{
public:
	SleepSofa():Sofa(),Bed(){}
	void FoldOut()
	{
		cout<<"Fold out the sofa."<<endl;
	}
};
void main()
{
	SleepSofa ss;
	ss.SetWeight(20);
	Furniture *pF;
	pF=(Furniture*)&ss;
	cout<<pF->GetWeight()<<endl;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?