- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验一 类与对象
实验一 类与对象㈠——类与对象的定义
一、实验目的
1.熟悉类的构成,掌握类的定义方法;
2.掌握对象的定义及对象成员的访问方法;
3.初步熟悉类与对象简单应用及编程。
二、实验学时
课内实验:2课时 课外练习:2课时
三 本实验涉及的新知识
㈠ 结构与类
1.C++的结构
C++中的结构是在C语言结构体的基础上扩展得到的。即在C++的结构体中,除可以定义数据成员外,还可以在定义函数,称为成员函数。
⑴ C++结构体的成员分为数据成员及成员函数;
⑵ C++结构的成员(数据成员或成员函数)可以定义为公有成员(public)、私有成员(private)、保护成员(protected),其缺省定义为公有成员。
2.C++的类
C++提供了一种新的比结构体更为安全的数据类型,即“类”类型。类与结构体最为本质的区别是,成员的缺省定义为私有成员,体现了数据的封装与隐藏性。
⑴ 同结构一样,在C++中,“类”是由用户自定义的一种数据类型;
⑵ C++的类中包括数据成员及成员函数,即将数据(数据成员)及对数据的操作(成员函数)封装在一个类中。
㈡ 类的定义
1.定义格式
2.说明:
⑴ 类的定义(或称类的声明)中,private、protected、public可以按任意顺序出现任意次。
⑵ 成员的访问限制
① 公有成员(public):所定义的成员是开放的,可在任何地方访问(类内部及程序的其他地方);
② 私有成员(private):所定义的成员是隐藏的,只能在类内部访问,不能在程序的其他地方访问;
③ 保护成员(protected):所定义的成员是半开放的,可在类内部访问,也可在其派生类中访问,但不能在程序的其他部分访问。
在类体外可以通过调用类的公有成员使用私有数据成员或保护数据成员,但不能改变其值。
⑶ 数据成员通常定义为私有成员,以实现数据的隐藏;成员函数通常定义为公有成员,以通过消息传递访问数据成员;保护成员主要用于继承。
3.数据成员
⑴ 定义格式:
类型 数据成员名;
⑵ 说明:
① 在定义类的数据成员时,由于计算机不给数据成员分配内存空间,不能使用auto、register、extern等进行说明,也不能赋初值;
② 数据成员既可为基本数据类型,也可以是复杂数据类型(数组、指针、引用、结构体变量、类的对象等)。
4.成员函数
在面向对象程序设计中,成员函数也称方法,是面向对象程序设计消息传递机制的实现方式。
⑴ 定义格式
① 在类中定义:
返回类型 函数名(形参表)
{ 函数体}
② 在类外定义:
在类中只给出成员函数的原型,成员函数体在类的外部定义。
类体内定义格式:
返回类型 (函数名(形参表);
类体外定义格式:
返回类型 类名::函数名(形参表)
{ 函数体}
⑵ 说明:
① 通常,当成员函数代码量较大时,在类外定义成员函数;
② 在定义成员函数以前一定要加上类名,类名与函数名间一定要用“::”,以表示与普通函数的区别;
③ 成员函数中,应给出形参,当无形参时,通常应加上void;
④ 成员函数的返回值类型,与函数原型中的返回类型必须相同;
⑤ 成员函数与普通函数一样,可以设置参数的默认值;
⑥ 在类内部定义的成员函数为内置函数,如果要将类外部定义的成员函数设置为内联函数,则应在函数定义前加上inline。
㈢ 对象的定义及成员的引用
类和对象是面向对象程序设计最重要的两个概念。从程序设计的角度理解,类是将具有相同数据成员、成员函数的操作对象的概括(或抽象),是定义对象的模板;而对象是类的实例化或具体化,即“类”变量。
1.对象的定义
⑴ 格式:
类名 对象名表;
⑵ 说明:在定义类时,计算机并不给类分配存储空间,只有定义了对象后,计算机才为对象分配存储空间。
2.对象成员的使用
⑴ 数据成员的使用
格式:
对象名.数据成员名
(只能是公有数据成员)。
⑵ 成员函数的使用
格式:
对象名.成员函数名(实参表)
对象名.类名::成员函数名(实参表)
⑶ 说明:
① 私有成员、公有成员不能在类的外部被使用,如果数据成员定义为私有成员、保护成员,则只能通过公有成员函数使用;
② 可以定义指向对象的指针用操作符“-”访问对象成员,也可以定义对象的引用,使用方法请参考实验二相关内容。
4.对象的赋值
可以用赋值方式将一个对象赋值给另一个对象,也称为对象的拷贝。
⑴ 格式:
对象名1=对象名2;
⑵ 说明:
① 在使用对象赋值语句时,两个对象必须是相同的类;
② 对象赋值后,二个对象仍是分离的,当改变某一对象成员的值时,另一对象不会因此而改变;
③ 对象赋值是一种浅拷贝(即位拷贝,对象有深拷贝将在以后的实验中介绍)。
四、实验内容
㈠ 验证及
您可能关注的文档
最近下载
- 中国文化概论课件-中国文化的现代化.ppt VIP
- 酒店基本情况调查表.docx VIP
- 《GNSS定位测量技术》 课件 子项目1、2 GNSS定位技术的发展;坐标系统与时间系统.ppt
- 人教人音版七年级音乐上册《红旗颂》课件下载.ppt VIP
- 2024年新人教版一年级上册数学全册教案(新版教材).docx
- 消防检测课件.pptx VIP
- 生物制药实验室管理软件:LabVantage二次开发_(5).LabVantage用户界面定制.docx VIP
- 中国文化概论课件-中国文化的发展历程.ppt VIP
- GB51016-2014 非煤露天矿边坡工程技术规范.pdf VIP
- 一种抗单粒子烧毁的高电子迁移率晶体管及其制备方法.pdf VIP
文档评论(0)