c/c++的函数参数与返回值

1.将const 指针付给非const指针是不允许的。
2.内联函数是按值传递的,而宏是替换。
3.引用是变量的别名,引用主要用于函数,使函数使用原始 ,而不是变量的别名。
4。int & 表示指向int类型的引用。引用必须在声明的时候进行初始化
 c语言可以允许避开按值传递的限制,采用指针传值的方式。

5.按引用传递与按值传递唯一的区别在于声明函数的方式不同,
void swapr (int & a,int & b);
void swapv(int a,int b);

引用传值和和按值还有一个区别是引用传值如果对引用进行了修改,会改变原值。
double refcube(const double &ra);
如果这样做,还是建议使用按值传递。

6 如果函数是引用传值,且参数是const的声明,这时候我传一个表达式,如果表达的结果不是参数类型,则程序会创建一个临时无名变量
 然后初始化为表达式的值,函数会使用这个无名变量的引用。

7.尽可能的使用const
将引用参数声明为常量数据的理由有3个:
1)使用const 可以尽量避免无意中修改数据的编程错误。
2)使用const使函数可以处理const和非const实参,否则将只能接受非const数据。
3)使用const可以使函数能够正确的生成并使用临时变量。

8.返回引用使用const进行修饰表示不能对返回值进行修改,延伸到结构体,就是不能对对象成员进行修改

原文地址:https://www.cnblogs.com/onlycxue/p/2800018.html