bobo老师,为什么adjIterator类中的私有成员为什么是引用型的变量,和普通型变量有什么区别呢

来源:7-3 相邻结点迭代器

慕勒6488227

2019-02-14

写回答

1回答

liuyubobobo

2019-02-14

用指针也可以。目的都是指向外面Graph类里的那个g。


不用普通类型(非指针非引用),是因为用普通类型的话,相当于每次创建adjIterator的时候,都复制了一遍整个g,创建一个adjIterator的时间复杂度,就和遍历整张图一样了:)


除此之外,使用引用,比指针多了一层安全保障。因为引用不可为空,且一旦赋值不能更改。当然,如果保证自己对指针的控制是正确的,使用指针没有问题:)


继续加油!:)

0
1
慕勒6488227
非常感谢!
2019-02-14
共1条回复

算法与数据结构(C++版) 面试/评级的算法复习技能包

课程专为:短时间内应对面试、升职测评等艰巨任务打造

11198 学习 · 1617 问题

查看课程