文档详情

实验二 类和对象的定义与使用.doc

发布:2017-12-17约7.33千字共10页下载文档
文本预览下载声明
天津大学本科生实验报告专用纸 天津大学本科生实验报告专用纸 学院 教育学院 年级2010专业 计算机 班级1 姓名李晓杰 学号3010212017 课程名称 类和对象的定义与使用 实验日期2010/04/01 成绩 同组实验者 类成员的说明或定义 protected: 类成员的说明或定义 public: 类成员的说明和定义 };2.对象的定义 (1)问题描述 对象是类的具体实例,是面向对象的核心概念,是组成程序的实体,在程序中使用的是利用类建立的对象,抽象的类是不能够使用的,因此必须将其具体化,这就是引进对象的原因。 对象的定义格式 类名 对象名表; 有关解释: a.可以同时定义多个对象,不同对象之间用逗号相隔。 b.可以定义对象指针,格式如下: 类名 *对象指针=普通对象; 普通对象对类成员的调用 对象名.公有数据成员 对象名.公有成员函数(实参表) 对象指针 对象指针名-公有数据成员 对象指针名-公有成员函数(实参表); 不难看出,还可以如下格式的调用: *对象指针名.公有数据成员 (*对象指针名.公有成员函数)(实参表); (2)基本要求 {Time t1(10,13,56); Date d1(12,25,2004); t1.display(d1); return 0; } 测试结果: 例2 #include iostream.h class Student {public: Student(int n,float s):num(n),score(s){} void change(int n,float s) {num=n;score=s;} void display(){coutnum scoreendl;} private: int num; float score; }; int main() {Student stud(101,78.5); stud.display(); stud.change(101,80.5); stud.display(); return 0; } 测试结果: 3.对象的初始化和删除 (1)问题描述 对象建立的时候系统自动调用构造函数,对象在删除时候系统自动调用析构函数。构造函数与析构函数是类中特殊的成员函数,决定了类对象的创建、初始化、拷贝和删除。它们具有普通成员函数的许多特性,可以在类内说明和定义它们,也可以在类内进行说明而在类外定义它们。 基本要求 熟悉构造函数与析构函数,并且了解缺省构造函数和缺省析构函数,至于拷贝初始化构造函数观察它的三种调用时机。 (3) 实验程序 例4#include iostream.h class Point { public: Point(int i,int j) //构造函数 { x=i; y=j; coutconstructor calledendl; } Point() //缺省构造函数 { x=y=0; coutdefault constructor calledendl; } ~Point() //析构函数 { coutdestructor calledendl; Point(int i,int j) //构造函数 { x=i; y=j; coutconstructor calledendl; } Point() //缺省构造函数 { x=y=0; coutdefault constructor calledendl; } ~Point() //析构函数 { coutdestructor calledendl; } Point(Point p) { x=p.x; y=p.y; cout“copy constructor called”endl; } void Setxy(int x,int y) { i=x; j=y; } void Print(); private: int x,y,i,j; }; void Point::Print() { cout(x,y)endl; } void main() { Point p1(1,2); Point p2(p1); p2.Print(); } 测试结果: }; A fun(A a) { coutHiendl; int x=10; int y=20; A r(x,y); return r; } void main() { A aa1(1,2),aa2; A aa
显示全部
相似文档