没有合适的资源?快使用搜索试试~ 我知道了~
首页面向对象程序与设计作业 实验二实验报告.doc
【有代码有截图】 【实验题目、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述)、实验调试与结果分析、实验小结、建议和体会】 实验1.有如下的程序: (1)这个程序在编译时会出现错误,请根据出错提示信息找出出错的原因。 (2)修改程序中的错误,使之能正确运行。 实验2.设有一个点类Point的定义如下: Point { public: Point() {x = 0; y = 0; } Point(double xv,double yv) {x = xv;y = yv;} Point(Point& pt) { x = pt.x; y = pt.y; } double getx() { return x; } double gety() { return y; } double Area() { return 0; } void Show() { cout<<"x="<<x<<' '<<"y="<<y<<endl; } private: double x,y; }; 编写程序,以点point类为基类,派生出矩形类Rectangle和圆类Circle。矩形由左上角的顶点和长、宽定义。圆由圆心和半径定义。派生类中新增的成员函数position(Point &pt)用于判断任一坐标点是在图形内、还是在图形的边缘上,还是在图形外。
资源详情
资源评论
资源推荐

学生学号 实验课成绩
学 生 实 验 报 告 书
实验课程名称
开 课 学 院
指导教师姓名
学 生 姓 名
学生专业班级
--
学年 第 学期

实验课程名称: 面向对象程序设计
A
实验项目名称 实验 2 继承性实现 实验成绩
实验者 专业班级 组别
/
同组者
/
实验日期 年 月 日
第一部分:实验分析与设计(可加页)
一、 实验内容描述(问题域描述)
实验 1.有如下的程序:
#include <iostream>
using namespace std;
class Base
{
public :
Base(int p1, int p2) { data1 = p1; data2 = p2; }
int Inc1( ) { return ++data1; }
int Inc2( ) { return ++data2; }
void Display()
{ cout<<"data1 = "<< data1 << " data2 = " << data2 << endl; }
protected:
int data1, data2;
};
class D1 : public Base {
public :
D1(int p1, int p2, int p3) : Base(p1, p2) { data3 = p3; }
int Inc1( ) { return Base::Inc1( ); }
int Inc3( ) { return ++data3; }
void Display( )
{
cout<<"data1 = "<< data1 << " data2 = " << data2 << " data3 = " << data3 <<endl;
cout<<"Base::Display() ----";
Base::Display( );
}
protected:
int data3;
};
class D2 : public Base {
public :
D2(int p1, int p2, int p4) : Base(p1, p2) { data4 = p4; }
int Inc1()
{
Base::Inc1( ); Base::Inc2( );

return Base::Inc1( );
}
int Inc4( ) { return ++data4; }
void Display( )
{
cout<<"data1 = "<< data1 << " data2 = " << data2 << " data4 = " << data4 <<endl;
cout<<"Base::Display() ----";
Base::Display( );
}
protected:
int data4;
};
class D12 : public D1, public D2 {
public :
D12(int p11,int p12,int p13,int p21,int p22,int p23,int p)
: D1(p11, p12, p13), D2(p21, p22, p23) { data5 = p; }
int Inc1( )
{ D1::Inc1(); D2::Inc1( );
return D1::Inc1( );
}
int Inc5( ) { return ++data5; }
void Display( )
{
cout<<"data1 = "<< data1 << " data2 = " << data2 <<endl; // ①
cout <<" data3 = " << data3 <<"data4 = "<< data4 << " data5 = " << data5 <<endl;
cout << "D1::Display( )----";
D1::Display( );
cout << "D2::Display( )----";
D2::Display( );
}
private:
int data5;
};
int main()
{
D12 d(1, 2, 3, 4, 5, 6, 7);
d. Display( );
cout << endl;
d.Inc1();
d.Inc2(); // ②
d.Inc3();
d.Inc4();
d.Inc5();
剩余11页未读,继续阅读










安全验证
文档复制为VIP权益,开通VIP直接复制

评论0