面向对象编程:抽象与实例——人
需积分: 9 172 浏览量
更新于2024-08-19
收藏 3.65MB PPT 举报
"抽象实例——人-C++东南大学何洁月课件(总)"
这篇资料主要探讨了在C++编程中使用抽象的概念,通过“人”这个实例来讲解数据抽象和代码抽象。数据抽象是指对对象的特征进行简化表示,这里的“人”对象包括了如`char *name`(姓名)、`char *sex`(性别)、`int age`(年龄)和`int id`(身份证号)等属性。这些属性构成了人这个类的基础数据结构。
代码抽象则关注对象的行为,从生物属性和社会属性两个角度来定义“人”的行为。生物属性包括`GetCloth()`(穿衣)、`Eat()`(吃东西)、`Step()`(行走)等,这些方法代表了人的基本生理活动。社会属性则涉及`Work()`(工作)、`Promote()`(晋升)等,反映了人在社会生活中的角色和活动。值得注意的是,根据不同的需求,同一个问题可能会有不同层次的抽象,即抽象的成员可能会有所不同。
资料中还提到了一些C语言的编程元素,如C程序的结构,包括分支结构和循环结构。分支结构如`if...else`语句,用于根据条件执行不同的代码块;循环结构如`for`、`while`等,用于重复执行某段代码。这部分内容通常来自《计算机程序设计基础》的相应章节,例如P58图3.3和图3.4所示的例子。
此外,资料还介绍了结构体(`struct`)的使用,如`struct aircraft`,用于定义具有翼幅、乘客数量等属性的飞机对象。结构体可以包含无名联合(`union`),在这里可能是为了节省存储空间,因为不同类型的飞机可能只需要使用其中一部分属性。同时,资料提到了函数的参数传递方式,例如引用(`&`)可以实现在函数内部改变调用者变量的值,与值传递形成对比。
面向对象编程(OOP)是另一个重点,它认为世界由一系列相互作用的对象组成。在C++中,类(`class`)是实现OOP的主要工具,它封装了数据和操作这些数据的方法。类的成员函数可以是内联的(使用`inline`关键字),以提高效率。此外,构造函数(`constructor`)用于在创建对象时初始化成员变量,析构函数(`destructor`)则在对象销毁前执行特定操作,确保资源的有效管理。通过继承和派生,可以构建复杂的类层次结构,但这些在当前资料中没有详细展开。
这份资料提供了C++中数据抽象、代码抽象、结构体、函数、面向对象编程的基本概念和实践,以及在实际问题中如何应用这些概念。通过实例“人”,强调了抽象在解决问题时的重要性,以及如何根据需求调整抽象的粒度。
2009-03-02 上传
2007-05-13 上传
2018-09-14 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
速本
- 粉丝: 20
- 资源: 2万+
最新资源
- MATLAB实现小波阈值去噪:Visushrink硬软算法对比
- 易语言实现画板图像缩放功能教程
- 大模型推荐系统: 优化算法与模型压缩技术
- Stancy: 静态文件驱动的简单RESTful API与前端框架集成
- 掌握Java全文搜索:深入Apache Lucene开源系统
- 19计应19田超的Python7-1试题整理
- 易语言实现多线程网络时间同步源码解析
- 人工智能大模型学习与实践指南
- 掌握Markdown:从基础到高级技巧解析
- JS-PizzaStore: JS应用程序模拟披萨递送服务
- CAMV开源XML编辑器:编辑、验证、设计及架构工具集
- 医学免疫学情景化自动生成考题系统
- 易语言实现多语言界面编程教程
- MATLAB实现16种回归算法在数据挖掘中的应用
- ***内容构建指南:深入HTML与LaTeX
- Python实现维基百科“历史上的今天”数据抓取教程