内置函数
带默认值形参
int func(int a, int b = 5) {
int r;
r = a / b;
return r;
}
注意:
如果某个位置参数有默认值,那么从这个位置往后,从左往右必须都要给参数
函数声明
如果函数声明有默认值的话,函数实现就不能有默认值
#include"iostream"
using namespace std;
#include<string>
int func(int a, int b, int c);//函数声明
int func(int a=5, int b = 5,int c=10)//函数实现
{
int r;
r = a / b;
return r;
}
int main() {
cout << func() << endl;
return 0;
}
反之如果函数声明没有默认值的话,函数实现就能有默认值
#include"iostream"
using namespace std;
#include<string>
int func(int a=5, int b=5, int c=10);//函数声明
int func(int a, int b ,int c)//函数实现
{
int r;
r = a / b;
return r;
}
int main() {
cout << func() << endl;
return 0;
}
函数重载
#include"iostream"
using namespace std;
#include<string>
void sum() {
cout << "这是一个无参数函数" << endl;
}//无形参函数
int sum(int a) {
cout <<"这是一个int函数"<< a << endl;
return a;
}//有一个整形函数
double sum(double a) {
cout << "这是一个double类型函数"<<a << endl;
return a;
}//double类型函数
int main() {
sum();
sum(4);
sum(5.8);
return 0;
}
函数重载满足条件
同一个作用域下(作用域:头文件以下,main函数以上)
函数参数类型不同或者格数不同或者顺序不同才能进行函数重载
注意:
函数的返回值不可以作为函数重载的条件
预处理命令
预处理命令:在编译代码之前处理(看到#,就是预处理命令)
预处理命令主要功能:
1.宏定义#define
#define 标识符 字符串
#define PI 3.1415926
c++里const就是宏定义语句
2.文件包含指令#include
#include"文件包含名"
#include<包含文件名>
3.条件编译指令
#if 0
#endif
预处理命令
#if 0//条件编译
#include"iostream"//文件包含
using namespace std;
#define N 100//宏定义
int main() {
return 0;
}
#endif//条件编译