从基础开始,主要记录在练习编程时,遇到的一些小坑(C++)——引用和指针

在用c++做最大公约数这道题的时候,为了将公共部分提取出来制成一个函数来使程序更加简明,遇到了形参是数组的问题。
这个问题困扰了自己很长时间。记不清是怎么调试出正确的做法的繁杂思考了。
大致就是一开始是比较理解引用和指针的差别的,就是用的时候还没能熟练使用。
引用用大白话来讲就是小名别名的意思。
就像我的名字是ccc,但是同学给我起了个外号叫zzz,也就是说当别人叫我的外号zzz时,其实也就是在叫名字是ccc的我。同一个人事物的不同叫法。
指针说白了就是给每一个变量一个编号,假如说1是松鼠2是苹果,那么我在说把编号为1的放到我跟前来,就是在指把松鼠放到我的跟前来。
具体到计算机里面,机器会给每一个存储空间设置一个唯一的编号,编号是连续的,而这编号的正统名字就叫做地址。
当你要获得某个变量的值的时候,你可以直接使用该变量的标识符来获取,
还有一种方法就是当你知道这个变量的值的地址的时候,可以直接要求计算机把该地址存储的值送到算术逻辑单元以便获得该值。
引用和指针在传参时候的区别。
引用在传参的时候不会新建一个同样类型的变量,直接就是操作源变量。
指针在传参的时候会新建一个同样类型的变量,所以如果要返回一个结果到源变量,还需要将在函数内新生成的变量的地址传回给调用它的地方。
由于引用是直接操作源变量,因此可以省去这个步骤,同时还可以避免不必要的内存泄漏。
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务