- 12
- 0
- 约 102页
- 2017-09-30 发布于北京
- 举报
3.1 类的定义 3.1.1 类的定义 定义用户定义的类型Date,考虑对该类型数据的操作,可能有: struct Date { int d,m,y;}; void init_date(Date ,int,int,int); //初始化 void add_year(Date ,int n); //引用参数 void add_month(Date ,int n); void add_day(Date ,int n); 3.1.2 数据封装 3.1.3 类的实例就是对象 在系统实现中,类是一种共享机制,它提供了一类对象共享其类的操作实现。 类是一种封装机制,它将一组数据和对该组数据的操作封装在一起。 类是对象的模型,对象承袭了类中的数据和方法。只是各实例对象的数据初始化状态和各个数据成员的值不同。 3.1.4 类外访问成员的方法 3.1.5 类类型符合抽象原则 类是C++语言的关键概念,是一种用户定义的类型;类是数据隐藏和封装的单位,它将细节封装起来,只允许通过公有段的数据和函数被访问,从而支持了数据抽象的机制。 缺省时class类包括的数据成员和成员函数都是私有的。 如果要在class 类中定义公有数据,需要显式地给出关键字public. 3.1.6 C++语言的类 3.2 构造函数和析构函数 3.2.1 简单构造函数和析构函数 3.2.2 复制构造函数 3.2.1 简单构造函数和析构函数 1. 构造函数 2. 重载构造函数 3. 具有缺省参数的构造函数 4. 缺省的构造函数 5. 析构函数 6. 对象的创建和释放 1. 构造函数 一个类中的数据成员是不能直接初始化的。 如: class X { int num=0; //错误 … }; 构造函数的作用: 1) 分配一个对象的数据成员的存储空间。 2)执行构造函数,一般是初始化一个对象的数据成员。 对于某些特殊的数据成员的初始化,只能采用表达式。 例 3-5 该类的所有对象的圆心都初始化为原点。 class Circle { int x; int y; float radius; public: Circle(int intx,int inty) { x=intx;y=inty; //赋值语句方式初始化数据成员 } … }; 该类的对象的圆心可以初始化为不同的位置。 上例的构造函数也可以写为: Circle(int intx,int inty): x(intx),y(inty) { } 创建对象时,需要自动调用构造函数,如果构造函数有参数,那么,创建对象时必须给出对应的构造函数的实参。 例 3-6 class Date { int d,m,y ; public: Date(int dd,int mm,int yy) //构造函数 { d=dd;m=mm;y=yy;} … }; 2. 重载构造函数 一个类可以提供多个构造函数,它们的参数必须互不相同,可以提供不同的初始化要求。 3. 具有缺省参数的构造函数 构造函数可以有缺省的参数。 class Date { int d,m,y; public: Date(int dd=0
您可能关注的文档
- 金融概论.ppt
- 金融证照大探索.ppt
- 金融工程概述.ppt
- 金融证照介绍.ppt
- 金融机构体系.ppt
- 经济金融形势与.ppt
- 金融机构体系1.ppt
- 美国金融危机.ppt
- 金融基础.ppt
- 金融理财.ppt
- 03-2 2025年度民主生活会征求意见座谈会主持词.docx
- 03-1 2025年度民主生活会主持讲话提纲.docx
- 02-1 会前学习-《县以上党和国家机关党员领导干部民主生活会若干规定》相关要求.docx
- 在2025年度民主生活会上的总结讲话三篇.docx
- 在2025年度民主生活会上的总结讲话三篇 (3).docx
- 市委宣传部2025年度民主生活会查摆问题整改方案两篇.docx
- 在市行政审批和政务信息管理局机关2026年全体干部政绩观教育大会上的党课讲稿.docx
- X市应急管理局2026年度安全生产监督检查计划.docx
- 2025年度民主生活会领导班子对照检查材料(五个带头)三篇.docx
- 2025年度民主生活会“五个带头”个人对照检查材料三篇.docx
原创力文档

文档评论(0)