硬汉嵌入式论坛

 找回密码
 立即注册
查看: 2207|回复: 5
收起左侧

[其它] 将goto,if else玩出花来的,也只有opencv,linux内核这种大型开源工程了

[复制链接]

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107484
QQ
发表于 2022-9-9 12:09:18 | 显示全部楼层 |阅读模式
赏析

opencv


linux
image.png




回复

使用道具 举报

0

主题

23

回帖

23

积分

新手上路

积分
23
发表于 2022-9-10 21:53:32 | 显示全部楼层
linux内核里面确实有很多goto,大部分都是在退出函数之前用来释放资源或者返回函数执行结果。
这OpenCV里的都是啥。。。为什么要写成这个鬼样子
回复

使用道具 举报

0

主题

5

回帖

5

积分

新手上路

积分
5
发表于 2023-1-13 15:58:19 | 显示全部楼层
opencv这段代码是人能读的?怕是得拿游标卡尺比着
回复

使用道具 举报

1

主题

68

回帖

71

积分

初级会员

积分
71
发表于 2023-1-29 10:00:42 | 显示全部楼层
二十四书生 发表于 2023-1-13 15:58
opencv这段代码是人能读的?怕是得拿游标卡尺比着

龙骨哈哈哈
回复

使用道具 举报

20

主题

389

回帖

449

积分

高级会员

积分
449
发表于 2023-1-29 11:27:52 | 显示全部楼层
大型的paser,有时候需要处理大量冗余信息,的确用goto比较方便,不过opencv也极端了点
回复

使用道具 举报

8

主题

163

回帖

187

积分

初级会员

积分
187
发表于 2023-2-2 14:12:47 | 显示全部楼层
本帖最后由 yunqi 于 2023-2-2 16:13 编辑
muooooo 发表于 2022-9-10 21:53
linux内核里面确实有很多goto,大部分都是在退出函数之前用来释放资源或者返回函数执行结果。
这OpenCV里 ...

是啊。一个函数内,替代多个return,goto更方便查看。可惜英国的MISRA那个规则啊,真讨厌,一个函数最多只让有一个Return
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-6-3 15:36 , Processed in 0.219507 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表