永发信息网

C++的引用很让我头疼

答案:2  悬赏:0  手机版
解决时间 2021-05-17 22:33
  • 提问者网友:难遇难求
  • 2021-05-17 08:51

C++的引用他的所用和指针有什么差别?

比如:Triangle(类说明符)&compare(Triange &t1,triangle &t2)

这个函数的所用是比较t1,t2两个三角型的大小。那么如果改用指针行不行,或者这样写Triangle::compare(int t1,int t2)又有什么不同?怎样去使用对象作为参数传递呢?

最佳答案
  • 五星知识达人网友:十鸦
  • 2021-05-17 09:13

引用和指针,我学完后,觉得没什么差别,两者都可以改变被引用或指向的值,引用只是别名,像老师又叫老师一样,两者同样,指针的话,你只要记得它可以改变指向的值,就OK啦。。。。。怎样去使用对象作为参数传递呢?。。。1。向函数传对象的地址,例 函数(&对象)......2.向函数传对象,例 函数(对象)。。

全部回答
  • 1楼网友:傲气稳了全场
  • 2021-05-17 10:53
引用就是变量本身 引用只是一个别名 int a, b; int* p = &a; int*& p2 = p; p2 = &b; // p = &b; *p2 = 3; // b = 3; 改用指针当然可以,不过你传参的时候要传地址,compare( &t1, &t2 ),在函数里用的时候还要解引用 if *t1 > *t2 .... 这不是很别扭? compare(int t1, int t2)这是接受2个int型参数了,不同点就是参数不同,而且是按值传递。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯