- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
天津大学本科生实验报告专用纸
天津大学本科生实验报告专用纸
学院 教育学院 年级2010专业 计算机 班级1 姓名李晓杰 学号3010212017
课程名称 类和对象的定义与使用 实验日期2010/04/01 成绩
同组实验者
类成员的说明或定义
protected:
类成员的说明或定义
public:
类成员的说明和定义
};
类成员函数的定义
类型 类名::成员函数名(形参表)
{函数体;}
(2)基本要求
了解类的定义格式和说明格式,了解类在程序的作用。
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
文档评论(0)