- 9
- 0
- 约2.48万字
- 约 104页
- 2021-10-13 发布于北京
- 举报
3.3 C++函数设计基础;函数原型是为了编译器对函数调用语句执行静态类型安全检查,即检查实参是否与形参的个数、类型、及顺序匹配。
函数原型的格式如下:
[作用域] 返回类型 函数名(类型1[形参名1],
类型2[形参名2],类型3[形参名3],……);
形参:在函数原型或定义及catch语句的参数列表中被声明的对象或指针、宏定义中的参数、模板定义中的类型参数等。
实参:函数调用语句中以逗号分隔的参数列表中的表达式、throw语句的操作数等。;二、函数的堆栈
一般函数都支持三种调用方式:过程调用、嵌套调用及递归调用。
函数堆栈实际上使用的是程序的堆栈段内存空间。虽然程序的堆栈段是系统为程序分配的一种静态数据区,函数堆栈是在
调用它的时候才动态分配的。这是因为:
无法在编译时确定一个函数运行时所需的堆栈大小。
如果在函数调用完后还要为它保留堆栈,则会很浪费内存空间。; 堆栈是自动管理的。也就是说局部变量的创建和销毁,堆栈的释放都是函数自动完成的 ,不需要程序员干涉。
函数堆栈重要有三个用途:
进入函数前保存环境变量和返回地址;进入函数时保存实参的拷贝;在函数体内保存局部变量。
函数调用规范:
函数调用规范决定了函数调用的实参压入堆栈、退出堆栈及堆栈释放的方式。Windows环境下常用的调用规范有:;1、_cdecl :
原创力文档

文档评论(0)