贵州大学计算机科学与技术学院
计算机科学与技术系上机实验报告
课 程:C++语言程序设计
老 师:张永军
姓 名:石岩(老挝留学生)
班 级:计科 101 班
学 号:100806L405
学 院:计算机科学与信息学院
实验日期: 年 月 日
实验一
一、实验名称
类和对象
二、实验目的及要求
设计一个类,并对其属性进行操作。
三、实验环境
Microsoft Visual Studio 2010
四、实验内容
1,定义一个dog类,包含age,weight等属性。以及对这些属性的操作方法。实现并测试这个类。
2,设计一个rectangle类,其属性为矩形的左下角与右上角的坐标,根据坐标计算矩形的面积。
五、算法描述及实验步骤
Dog+Dog(n: string , ag: int ,we: int)
Dog
+Dog(n: string , ag: int ,we: int)
+get()
+show()
+~Dog()
-name: string
-weight: int
-age: int
Rectangle
Rectangle
+get(): void
+show(): void
-X1:int
-X2: int
-Y1: int
-Y2: int
六、调试过程及实验结果
1, 保存源程序代码,并声称解决方案。
2,调试并执行。
3,输出为:
①
the message of dog is:
name:tutu age:2 weight:20
input the name age and weight of dog
花花 3 60
the message of dog is:
name:花花 age:3 weight:60
the message of dog is:
name:hua age:4 weight:60
called
called
请按任意键继续. . .
②
输入左下角的坐标:
3 6
输入右上角的坐标:
4 7
两点的坐标
左下角的坐标:(3,6)
右上角的坐标:(4,7)
面积为:1
输入左下角的坐标:
1 0
输入右上角的坐标:
2 6
两点的坐标
左下角的坐标:(1,0)
右上角的坐标:(2,6)
面积为:6
请按任意键继续. . .
七、总结
1,构造函数用于对对象的初始化,在定义类时,如果没有定义构造函数,系统将自动生成一个简单的构造函数。
2,构造函数没有返回值,不允许显示调用,创建对象时,系统将自动调用相应的构造函数。
3,析构函数是对对象进行最后的清理工作,它不允许有参数,没有返回值。如果没有定义析构函数,系统将自动生成。
4,对象的私有成员,可以通过成员函数访问,类外不能访问对象的私有成员。
八、附录
1,① Dog.h
#include
#include
using namespace std;
class Dog
{
public:
Dog(string n,int ag,int we);
void get();
void show();
~Dog()
{
cout<
}
private:
string name;
int weight;
int age;
};
②Dog.cpp
#include"4-8.h"
Dog::Dog(string n,int ag,int we):name(n),age(ag),weight(we){}
void Dog::get()
{
cout<
cin>>name>>age>>weight;
}
void Dog::show()
{
cout<
cout<
}
= 3 \* GB3 ③Dogmain.cpp
#include"4-8.h"
int main()
{
Dog dog("tutu",2,20);
dog.show();
dog.get();
dog.show();
Dog dog1("hua",4,60);
dog1.show();
return 0;
}
2, ①rectangle.h
#include
#include
using namespace std;
class Rectangle
{
public:
void get();
void show();
private:
int x1,x2