我这个C++程序有什么错误,大家帮我看看.....

题目是•定义抽象类Shape–成员变量:行数–成员函数:显示(display)–成员函数:设置行数(setline)•定义Shape的派生类–Tr... 题目是 •定义抽象类Shape
–成员变量:行数
–成员函数:显示(display)
–成员函数:设置行数(setline)
•定义Shape的派生类
–Triangular:可以向屏幕输出三角形星阵
–Rectangular:可以向屏幕输出方形星阵
–Parallelogram:可以向屏幕输出平行四边形星阵
•main函数定义如下:
Shape* S;
S=new Triangular(); S->setline(5);
S->display(); delete S;
S=new Rectangular(); S->setline(6);
S->display(); delete S;
S=new Parallelogram(); S->setline(7);
S->display(); delete S; •要求:完成上述所有类的定义,并使程序按预期输出
我的代码是
#include "stdafx.h"
#include<iostream>
using namespace std;
class Shape
{
public:
virtual void display() const{;}
virtual void setline(int &n) const{;}
int line;
}
class Triangular: public Shape
{
public:
virtual void display();
virtual void setline(int &n){line=n;}
}

class Rectangular: public Shape
{
public:
virtual void display();
virtual void setline(int &n){line=n;}
}
class Parallelogram: public Shape
{
public:
virtual void display();
virtual void setline(int &n){line=n;}
}

void Triangular:: display()
{ int t,l,h;
for(h=1;h<=line;h++){
for(t=0;t<line-h;t++){
cout<<' ';
}
for(l=1;l<=2*h-1;l++){
cout<<'*';
}
cout<<endl;
}
}
void Rectangular::display(){
int g;
for(g=0;g<line;g++){
cout<<"****************"<<endl;
}
}
void Parallelogram::display( ){
int f,e;
for(f=1;f<line;f++){
for(e=1;e<=line-f;e++){
cout<<' ';
}
cout<<"****************"<<endl;
}
}
int main()
{
Shape* S;
S=new Triangular(); S->setline(5);
S->display(); delete S;
S=new Rectangular(); S->setline(6);
S->display(); delete S;
S=new Parallelogram(); S->setline(7);
S->display(); delete S;

}
展开
 我来答
谢兴桥
2012-05-08 · TA获得超过387个赞
知道小有建树答主
回答量:591
采纳率:33%
帮助的人:250万
展开全部
把上面的基类的函数里面的const去掉;
还有每个setline函数形参里面取值符号去掉
匿名用户
2012-05-08
展开全部
问一下 你这是抽象类么?你的纯虚函数呢??
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式