c++学习笔记一


函数

一、函数的定义:

1.语法形式

类型说明符 函数名(形参){
语句序列
}
举例

//计算x的n次方
double power(double x,int n){
	double val=1.0;
	while(n--)
		val*=x;
	return val;
}

2.函数的调用

函数在调用前需要声明,在调用函数之前,添加该函数的函数原型声明,格式:
类型说明符 函数名(形参);
嵌套调用:函数一调用函数二,函数二调用函数三,最后主函数调用函数一
递归调用:函数可以直接或者间接的调用自己,这就是递归
引用传递:&
创建一个引用,给它赋予形参的值,可以改变最终的实参的值
可以把引用传递看成是在对内存空间进行操作
例子

void swap(int &x,int &y){
//将传入的两个实参的值互换
	int tmp=x;
	x=y;
	y=tmp;
}
int mian(){
int x=1,y=2;
cout<<"x="<<x<<"y="<<y<<endl;
swap(x,y);
cout<<"x="<<x<<"y="<<y<<endl;
return 0
}

二、内联函数

内联函数不是在调用时发生控制转移,而是在编译时将函数体嵌入在每一个调用处
内联函数定义需要在函数体前加上 inline
inline 类型说明符 函数名(形参){
语句序列
}
内联函数要求语句序列比较简单,否则会造成代码膨胀,增大开销

带默认形参值的函数
函数在定义时可以预先声明默认的形参值

int add(int x=0,int y=1){
	return x+y;
}
void main(){
	add();//使用默认形参计算
	add(1,2);//用实参初始化形参
	add(1);//用部分实参初始化形参
}

在相同的作用域内,不允许在同一个函数的多个声明中对同一参数的默认值重复的定义,即使前后值不同也不行

三、函数重载

函数重载要求是函数名相同的情况下,形参的个数或者形参的类型不同,就是函数的重载
例子

int point(int x,int y);
int point(int x,int y,int z);
double point(double x,double y);
double point(double x,double y,double z);

四、内部函数

还有一些内部函数,先声明头文件,就可以直接调用,比如
先声明

# include <cmath>

然后可以调用

sin(); cos(); tan(); sqrt();等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值