C++学习:函数重载与面向对象程序设计
需积分: 48 5 浏览量
更新于2024-08-19
收藏 17.46MB PPT 举报
"这篇文档是关于C++学习的笔记,主要讨论了函数的区别,特别是重载函数的最佳匹配原则,以及C++的相关背景和历史。"
在C++编程中,函数的区别是一个重要的概念,特别是当涉及到类型相近的重载函数时。重载函数允许在同一作用域内使用相同名称但参数列表不同的函数。决定哪种重载函数是最佳匹配的依据有以下四个层次:
1) **精确匹配(exact match)**:如果一个函数调用的参数类型与函数定义的参数类型完全匹配,那么这就是最理想的匹配。
2) **类型提升(promotion)**:如果参数类型可以通过简单的类型提升(如将char提升为int)来匹配,那么这个匹配次于精确匹配。
3) **标准转换(standard conversion)**:如果需要进行更复杂的类型转换,如从派生类到基类的转换,或者从整数类型到浮点类型的转换,这些都属于标准转换范畴。
4) **类类型转换(class-type conversion)**:在类层次结构中,如果存在显式的转换构造函数或类型转换操作符,这种转换会被考虑进来。
接着,笔记提到了C++的概述。C++是由比雅尼·斯特劳斯特鲁普博士在1979年开发的,最初命名为"C with Class",最终演变成现在的C++。1998年,C++有了ANSI/ISO标准,同时斯特劳斯特鲁普的《The C++ Programming Language》第三版发布。C++是一种多范式语言,支持面向对象编程、数据抽象以及泛型编程。
C++的发展经历了三个阶段:从最初的面向对象语言,到引入泛型编程(如STL和Boost库),再到后期的模板元编程(如Loki和MPL)。C++在软件开发中占据着重要地位,广泛应用于嵌入式系统、游戏编程、网络编程和系统编程等领域。
课程介绍部分提到,这是一门必修的高级技术课程,总学时72学时,每周有理论题和编程题的作业,学生需要在规定时间内通过moodle平台提交。课程内容包括C++概述、C与C++的关系、面向对象程序设计以及编写第一个C++程序等主题。
2021-03-23 上传
143 浏览量
2014-07-23 上传
2021-07-14 上传
2011-11-02 上传
2022-08-03 上传
2014-05-18 上传
2022-03-14 上传
2016-09-08 上传
韩大人的指尖记录
- 粉丝: 32
- 资源: 2万+
最新资源
- C语言数组操作:高度检查器编程实践
- 基于Swift开发的嘉定单车LBS iOS应用项目解析
- 钗头凤声乐表演的二度创作分析报告
- 分布式数据库特训营全套教程资料
- JavaScript开发者Robert Bindar的博客平台
- MATLAB投影寻踪代码教程及文件解压缩指南
- HTML5拖放实现的RPSLS游戏教程
- HT://Dig引擎接口,Ampoliros开源模块应用
- 全面探测服务器性能与PHP环境的iprober PHP探针v0.024
- 新版提醒应用v2:基于MongoDB的数据存储
- 《我的世界》东方大陆1.12.2材质包深度体验
- Hypercore Promisifier: JavaScript中的回调转换为Promise包装器
- 探索开源项目Artifice:Slyme脚本与技巧游戏
- Matlab机器人学习代码解析与笔记分享
- 查尔默斯大学计算物理作业HP2解析
- GitHub问题管理新工具:GIRA-crx插件介绍