版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2011年9月C++程序设计基础
What-Why-How什么是C++?C语言的增强版;面向对象程序设计语言;一种集各种编程风格于一身的程序设计语言.为何要学习C++?工作、教育、娱乐、……怎样学习C++?学习语言的语法和思想;学习相关操作系统的API(应用程序编程接口).C++语法上强调的是类、对象、模板、标准库、引用、异常和const关键字;
思想上强调的是面向对象和泛型.C++核心概念:类和对象类和对象1.引言:类源于现实生活中:我们所遇见的是实实在在的对象,对每个对象的认识就需要抽象的概念。分类的结果使对象更加具体和细化。
例如:什么是奔驰?回答是一种小汽车;再问:什么是小汽车?回答是一种交通工具等等。在面向对象的计算机世界里:具体的一辆实实在在的奔驰小汽车称为类奔驰的实例或对象。类奔驰是类小汽车的一个子类,而类小汽车是类交通工具的一个子类,等等。类和对象问题一:如何设计一个鸟类:
分析:从鸟的特征属性着手:鸟有两个翅膀、两只脚、身上还有好多羽毛.可以用以往的数据类型-------结构来定义一个鸟类了.而仅仅从这几个属性中定义一个鸟类是不够的;(<=静态属性)鸟类最主要的特征是大多数鸟类能够飞行,然而飞行是对鸟来说是一种行为,在计算机语言描述中就是用函数来表示;(<=动态行为)=>用结构来表示就不太理想.
类和对象把数据和描述行为的函数封装在一起,就是类的定义了。
鸟类的定义:类和对象2.定义类:构成了实现C++面向对象程序设计的基础,把属性和行为封装在一起,组成一个基本的单元,形成了一个新的数据类型.对象:就是这种新的数据类型——类的变量,但具备了属性和行为的变量我们称之为对象.类和对象类和结构一样,是一种用户自定义的数据类型,但和结构不同的是类中除了有数据变量以外还有函数。一般格式定义如下:
class
类名//class是定义类的关键字,类名标识一个类
{
private://private,public,protected表示访问权限
私有数据和成员;
public:
公有数据和成员;
protect:
保护数据和成员;
};
类和对象例1:时钟类.类和对象3.类的成员函数功能:对类内中的数据的操作,同时作为外部数据成员的接口,代表了类的对象的行为.形式:这些函数可以定义在类的内部,也可以定义在类体的外部。在类的内部定义的成员函数叫内联函数;在类的外部定义的成员函数需要在函数的前面加上类名::,称为成员名限定。
类和对象
类外部定义的优点是:整个类的代码合理布局,容易维护.缺点是增加了成员函数调用的开销.解决方案:既使类代码合理分配,又避免调用的开销,可以在类外部定义的成员前加上inline。
3.类的成员函数类和对象类和对象4.访问权限
访问权限说明了类中的数据和成员函数的访问机制,实现类的数据的封装性.访问权限分为private(私有)、public(公有)、protected(保护)三种.
类和对象5.对象的定义格式:<类名><对象名表>;类作为一个用户自定义的数据类型,系统不会给类分配存储空间,只有定义了类的对象才会给对象分配相应的内存.例2:给上述时钟类定义对象:
ClockclockA,clockB,*clockC,clockD[5];
每个对象占据内存不同区域,各自的数据不同,但是操作数据的函数代码是共用的.=>建立对象时只分配用与保存数据的内存,操作函数为各个对象共享.类和对象对象成员的表示方法
定义:一个对象的成员就是该对象的类所定义的成员.
分类:数据成员和成员函数.
调用方式:
对象名.成员名或
对象名.成员名(<参数表>)
对象指针名->成员名
对象指针名->成员名(<参数表>)
类和对象备注:
.和->是运算符,它们的功能表示对象的成员.两者不同的地方是:"."是用来表示一般对象的成员;"->"用来表示指向对象的指针的成员.
例如:
ClockclockA;
Clock*
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 生物标志物在药物代谢动力学研究中的作用
- 生物制剂失应答的炎症性肠病个体化治疗方案制定-1
- 生活质量追踪指导下的放疗方案优化策略
- 生活质量终点在慢性病药物生命周期管理中的作用
- 深度解析(2026)《GBT 20032-2024项目风险管理 应用指南》
- 深度解析(2026)《GBT 19524.1-2004肥料中粪大肠菌群的测定》
- 注册电气工程师面试题库及答案详解
- 生活方式干预对高血压肾病进展的影响
- 瓣叶撕裂修复的术中应急处理方案
- 软件开发人员面试题含答案
- 美的微波炉公司制造班长工作手册
- 空压站远程监控实现方案
- 2023年医技类-康复医学治疗技术(师)代码:209考试历年真题专家版答案
- 武士与龙【经典绘本】
- 药物化学知到章节答案智慧树2023年徐州医科大学
- 工作总结中的不足与改进该怎么写
- 雨水管道工程施工组织设计
- GA 915-2010讯问椅
- 工业区位因素与工业布局教案 高中地理湘教版(2019)必修二
- 篮球英语介绍课件
- 肺结核共45张课件
评论
0/150
提交评论