CSE391Object-orientedProgramming:国立中山大学2020年秋季CSE391面向对象程序设计
面向对象编程(Object-Oriented Programming,简称OOP)是一种重要的编程范式,它基于“对象”的概念,通过封装、继承和多态等核心特性,实现了代码的复用和模块化。C++ 是一种支持OOP的强类型、编译型、通用的编程语言,由Bjarne Stroustrup于1983年在C语言的基础上扩展而来。国立中山大学的CSE391课程,即面向对象程序设计,旨在教授学生如何有效利用C++进行面向对象的编程。 在这个课程中,学生将学习以下几个关键知识点: 1. **对象与类**:对象是OOP中的基本单位,它代表现实世界中的实体或概念。类则是创建对象的模板,定义了对象的属性(数据成员)和行为(成员函数)。在C++中,使用`class`关键字来声明类。 2. **封装**:封装是OOP的核心特征之一,它隐藏了对象内部的实现细节,只对外提供公共接口。在C++中,通过访问修饰符(如`public`、`private`和`protected`)实现封装。 3. **继承**:继承允许一个类(子类)继承另一个类(父类)的属性和行为,减少了代码重复,提高了代码的可维护性和可扩展性。C++支持单一继承和多重继承。 4. **多态**:多态是指不同对象对同一消息(方法调用)能做出不同的响应。C++通过虚函数(`virtual`)和纯虚函数(`=0`)实现多态,支持动态绑定。 5. **构造函数与析构函数**:构造函数是类的一个特殊成员函数,用于初始化新创建的对象;析构函数则在对象生命周期结束时自动调用,用于清理资源。C++中的构造函数和析构函数没有返回类型,名字分别与类名相同且首字母大写。 6. **友元**:友元函数或友元类可以访问类的私有和受保护成员,打破封装原则但提供了更灵活的访问控制。 7. **模板**:C++的模板允许创建泛型代码,可以用于类(类模板)和函数(函数模板),提高代码的复用性。 8. **异常处理**:C++的异常处理机制允许程序在运行时捕获和处理错误,使用`try`、`catch`和`throw`关键字进行异常的抛出和捕获。 9. **STL(Standard Template Library)**:C++标准模板库提供了容器(如vector、list、map等)、迭代器、算法和函数对象,极大地增强了C++的库支持。 10. **RAII(Resource Acquisition Is Initialization)**:RAII是C++中的一种编程策略,通过对象的生命周期管理资源,确保资源在不再需要时被正确释放。 在国立中山大学的CSE391课程中,学生将通过实例和项目实践这些概念,掌握如何在C++中有效地应用面向对象编程。通过深入学习和理解这些知识点,学生将具备编写高效、可维护的C++代码的能力。
- 1
- 粉丝: 22
- 资源: 4572
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- GSDML-V2.3-wenglor-wenglor ident-20161007-112500.xml
- stm32心率检测keil5工程
- GSDML-V2.2-Murrelektronik-IMPACT67-20120315.xml
- GSDML-V2.31-Murrelektronik-MVK-MPNIO-F-20150903.xml
- 通过C#上位机与库卡(KUKA)机器人进行TCP通讯,实现实时位置返回及运动控制
- SEW GSDML-V2.25-SEW-Controller-20131216-154302.xml
- 音乐频谱Visualizer代码
- TensorRT C++部署-基于Pytorch+ Retinaface的车牌定位及关键点检测python和C++源码+运行教程.zip
- STM32 实现交通灯控制程序keil5工程
- 基于AVEC2014数据集和Resnet网络实现的抑郁症诊断项目python源码+数据集(高分项目)
评论0