//C++函数
//内联函数
//内联函数的作用: 程序无需跳到另一个位置处执行代码,再跳回来
//内联函数的运行速度比常规函数稍快,但代价是需要占用更多内存
//声明内联函数的措施:在函数声明 和 定义前加上关键字inline
inline double square(double x);//申明内联函数
inline double square(double x){
return x*x;
}//定义内联函数
//类似宏定义
#define SQUARE(X) X*X; //但是X不是参数传递
变量引用
int rats =10;
int &rods= rats; //&不是地址符,而是类型标识符的一部分
//rats 和 rods的值和地址都一样 ,当rods++时,rats的值就自动加1
//他们是一个变量两个名称
int *p =&rats; //指针申明
void swap(int &a,int &b){
int temp;
temp=a;
a=b;
b=temp;
} //引用传递可以改变a b的值,同时传送回去。
void swap (int *p,int *q){
int temp;
temp=*p;
*p=*q;
*q=temp;
}//指针是改变他们的指向地址
//以上两个函数都可以是现实值交换传递,但是
void swap(int a,int b){
int temp;
temp=a;
a=b;
b=temp;
} //无法实现
//何时使用引用参数
//1.程序员能够修改调用函数中的数据对象
//2.通过传递引用而不是整个数据对象,可以提高程序的运行速度
//对于使用传递的值而不做修改的函数
//1.如果数据对象很小,入内置数据类型或小型结构,则按值传递
//2.如果数据对象是数组,则使用指针,并将指针声明为指向const的指针
//3.如果数据对象是较大的结构,则使用const指针或者const引用提高程序的效率。
//4.如果数据对象是类对象,则使用const引用
//修改调用函数中的数据的函数
//1.如果数据对象是内置数据类型,则使用指针
//2.如果数据对象是数组,则只能使用指针
//3.如果数据对象是结构,则使用引用或指针
//4.如果数据对象是类对象,则使用引用
函数重载