Naploen8 阅读(229) 评论(0)
//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.如果数据对象是类对象,则使用引用 


函数重载