游戏开发 c++基础学习 笔记摘要第16天
2021/7/26 20:36:09
本文主要是介绍游戏开发 c++基础学习 笔记摘要第16天,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
函数重载
在同一作用域内的几个函数名字相同但形参列表不同
当调用函数时,编译器会根据传递的实参推断调用哪个函数
不允许两个函数除了返回类型其他要素都相同
Record lookup(const Account &acct); Record lookup(const Account &);//省略了形参的名字 //两个函数时相同的,形参的名字不影响形参列表内容
重载和const形参
顶层const不影响传函数的对象
一个拥有顶层const的形参无法和另外一个没有顶层const的形参区分开
Record lookup(Phone); Record lookup(const Phone);//重复声明了Record lookup(Phone) Record lookup(Phone*); Record lookup(Phone* const);//重复声明Record lookup(Phone*)
const为底层const时,对于接受引用或指针的函数来说,对象是常量还是非常量对应的形参不同
Record lookup(Phone*); Record lookup(const Phone&); Record lookup(Phone*) Record lookup(const Phone*)
内联函数(inline函数)
作用:函数调用需要时间和空间的代价,为了解决函数调用效率问题
原理:以空间为代价,节约时间
1.内联函数适合规模较小且频繁的函数
2.内联函数中不能有switch和循环
函数的缺省
如果一个函数的形参有默认值,那么该形参右边必须都有默认值
函数的定义和声明缺省函数,两者留其一
分享一个关于内存的题
int x1=30,x2=40; void sub(int x,int y) { x1=x;x=y;y=x1;//交换x,y,由于无返回值,只有全局变量x1被保存下来 } int main() { int x3=10,x4=20; sub(x3,x4);//x1=x3=30,x4=20 sub(x2,x1);//x1=x2=40,x1=40 cout<<x3<<x4<<x1<<x2;//10,20,40,40 }
strcpy函数原理
char*strcpy(char*strDest,const char * strSrc) { if(strDest==NULL || strSrc == NULL) return NULL; char*temp=strDest; while((*strDest++=&strSrc++)!='\0'); return temp; }
这篇关于游戏开发 c++基础学习 笔记摘要第16天的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-23DevExpress 怎么实现右键菜单(Context Menu)显示中文?-icode9专业技术文章分享
- 2024-12-22怎么通过控制台去看我的页面渲染的内容在哪个文件中呢-icode9专业技术文章分享
- 2024-12-22el-tabs 组件只被引用了一次,但有时会渲染两次是什么原因?-icode9专业技术文章分享
- 2024-12-22wordpress有哪些好的安全插件?-icode9专业技术文章分享
- 2024-12-22wordpress如何查看系统有哪些cron任务?-icode9专业技术文章分享
- 2024-12-21Svg Sprite Icon教程:轻松入门与应用指南
- 2024-12-20Excel数据导出实战:新手必学的简单教程
- 2024-12-20RBAC的权限实战:新手入门教程
- 2024-12-20Svg Sprite Icon实战:从入门到上手的全面指南
- 2024-12-20LCD1602显示模块详解