题解 | #多态实现求面积体积#

多态实现求面积体积

https://www.nowcoder.com/practice/826ed8e0d67042c49e32a7293c873538

#include<bits/stdc++.h>
using namespace std;
class rectangle{
	private:
		int length,width;
	public:
		rectangle(int x,int y){
			length=x;
			width=y;
		}
		void set(int x,int y){
			length=x;
			width=y;
		}
		int getlength(){
			return length;
		}
		int getwidth(){
			return width;
		}
		// write your code here...
		virtual int getval()
		{
			return getwidth()*getlength();
		}
        
};
class cuboid:public rectangle{
	private:
		int height;
	public:
		cuboid(int x,int y,int z):rectangle(x,y){
			height=z;
		}
		// write your code here...
		int getval()
		{
			return height*this->rectangle::getval();
		}
        
};
int main(){
	int x,y,z;
	cin>>x>>y>>z;
	cuboid a(x,y,z);
	rectangle b(x,y);
	
	rectangle *p=&b;
	cout<<p->getval()<<'\n';
	
	p=&a;
	cout<<p->getval();
	return 0;
}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务