返回信息流各位论坛老哥们,对于递归函数 void dfs() 和一个在函数体中要用到的对象类型 vector<string>ans,下面两种方式哪种效率更高一点呢?
还是这种?
我比较倾向于第一种,因为第二种的引用也是一种指针,层层传参也是要多花费一些时间的,我不知道能不能简单地这么理解,细微之处可能也说不清,想问一下论坛大佬的看法。
这是一条镜像帖。来源:北邮人论坛 / cpp / #101231同步于 2021/9/16
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
【讨论】两种写法的效率差别
sheeeeeeep
2021/9/16镜像同步3 回复
订阅后,新回复会通过你的通知中心匿名送达。
3 条回复
写个benchmark试试?我觉得两个应该差不多,第二种略慢一点,第二种多了拷贝vector引用到参数的操作,但我觉得这个应该是寄存器操作可以忽略不计
像楼上说的,直接看汇编。64 位系统上函数调用都是通过寄存器传参的,性能开销忽略不计。
不过从编码规范上来说,应尽量避免使用全局变量。从模块化角度来说,第二种写法更好点(瞎说的?)。不管哪种规范,还是要看具体的业务逻辑