Const int & a 与 int a在作函数参数时的区别:
当int a 作函数参数时,在函数实现时,是先将实参的值传递给形参a,然后通过形参a进行函数的实现。
而当是const int & a 作函数参数时,在函数实现时,是直接拿实参来进行函数的实现,但又由于参数由const修饰符修饰,故在函数实现时a的值不能改变。
总之,这两个做参数,都不会改变实参的值。但由于前者少了一个传参的过程,并且不用创建临时变量(在编译时编译器会为形参开辟内存,存放在栈区),故相对于后者其更加节省时间和空间。
来源:https://blog.csdn.net/qq_27577651/article/details/98852073