永发信息网

为什么要在函数的参数前面加个地址符啊,不加行吗?

答案:3  悬赏:70  手机版
解决时间 2021-04-07 05:07
int HashInsert(HashTable &H, int key)
{
if (! HashSerch(H, key))
return -1;
else
{
H.elem[key] = key;
H.count++;
return 0;
}
}
最佳答案
这个不是地址符,而是一个引用符,意思是直接作用于传递的对中。如果不加的话,H是传递对象的一个副本。
地址符可以不加的,加不加引用符主要是看你定义HashTable的类和程序的功能。
如果你的HashTable类过于庞大的话,那么要创建一个副本的话内存会消耗过大。这时就用引用,如果HashTable类是一个很小的类,那么就可以不加。



对于你这个函数来说,是将key插入到H.elem中,必须作用在HashTable数据结构的本身才算是插入。插入副本的话在函数结束时将会自动被析构掉,就变的没有意义了。所以必须加地址符。
全部回答
你好! 这是引用传递,不加不行。 可以看看引用传递的内容,如果不用引用的话,就需要传指针了。 打字不易,采纳哦!
函数取得变量的地址,根据地址取得变量的值
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
冰箱的哪一格是冷冻?
微星770T C35的主板如何设置第一启动为U盘
南阳到红泥湾公交路线是什么,票价多少?
阿里巴巴的批发店怎么开?
小米四手机连接瑞纳蓝牙放歌汽车怎么不响啊
香特莉蛋糕江城店地址有知道的么?有点事想过
^我确定 一定 以及肯定_,这是哪首歌的歌词?
钢铁侠只有电影? 不像 绿箭侠 闪电侠一样有
血检:淋巴细胞比率偏低,淋巴细胞偏低,嗜酸
天津t2机场――北京朝阳区多少公里
勺子形状的星座叫什么
超级本会卡么,因为他只有一个盘,是不是相当
东台东海国际发生什么事件
女朋友只在乎我的钱.
农村信用社齐街分社在什么地方啊,我要过去处
推荐资讯
魔兽世界lr职业大厅随从选择 升级随从的人在
十万加阅读量的微信文章都是怎么弄出来的
王者荣耀初夏男神英雄都有谁
川沙新德佳苑属于哪个居委
空调4.5kw是几匹?谢谢
一首励志歌,很多人都听过,最后一句是I beli
蒸汽清洗机里面的一个零件漏电
求《冷面残王:凰妃太放肆》的百度云资源
大家认为大公牛好还是大火星好
直接胆黄素正常8.8我的9.3正常吗?
如图中甲的周长与乙的周长相比A.甲长B.乙长C.
小米6X 真机首发评测:1599 元值不值得买单
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?