C++拾遗(三)——函数
2024-10-21 14:44:39
函数的定义
- C++是一种静态强类型语言,对于每一次的函数调用,编译时都会检查其实参,必须与形参类型相同,或可被转换为该类型。
参数传递
- 普通的非引用类型的参数通过复制对应的实参实现初始化。引用形参直接关联到绑定的对象,而非这些对象的副本。
- 引用形参的另一种用法是向主调函数返回额外的结果(当一个返回值不够时)。
- 在向函数传递大型对象时,需要使用引用形参,以避免复制操作:此时应将形参定义为const引用。
- 注意到,当返回引用时,千万不能返回局部变量的引用。同时,也不能返回指向局部对象的指针。
内联函数
- 将函数定义为内联函数,就是将它在程序中每个调用点上“内联地”展开,以避免函数调用的开销。
- 内联函数应在头文件中定义。其定义可以出现不止一次,只要在某个源文件中只出现一次且在所有文件中完全相同。
重载函数
- 函数不能仅仅基于不同的返回类型而实现重载。仅当形参时引用或指针时,形参是否为const才有影响。
- 函数的重载确定分为三个步骤:候选函数,选择可行函数,寻找最佳匹配。
- 为了确定最佳匹配,编译器将实参类型到相应形参类型的转换划分等级,以降序排列:精确匹配,通过类型提升实现的匹配,通过标准转换实现的匹配,通过类类型转换实现的匹配。
最新文章
- javascript小技巧:同步服务器时间、同步倒计时
- C++调用shell
- 大话设计模式-->;模板方法设计模式
- [NOIP2016-day1-T2]天天爱跑步running_题解
- HDU 4349 Xiao Ming's Hope
- shp地图解析(不用AE)
- FbxDataType is ambiguous
- Mustache.js语法学习笔记
- GridView网格线都设置
- 借助csv用PHP生成excel文件
- CTF---编程入门第一题 循环
- 如何运用git实现版本控制
- linux下面重启nfs报错:nfs-server.service:main process exited
- python魔法函数之__getattr__与__getattribute__
- 程序重复报more than 'max_user_connections' active connections问题解决
- Webpack的安装、配置与执行
- WCF(五) 深入理解绑定
- jstl标注标签库
- java生成API文档
- bzoj4897 [Thu Summer Camp2016]成绩单