递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 7855|回复: 16
打印 上一主题 下一主题

[视窗] 请问 (如果) (分支判断) 语句的差异

[复制链接]

32

主题

129

帖子

722

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
722
跳转到指定楼层
楼主
发表于 2022-11-19 12:08:28 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 xuwanbin 于 2022-11-19 12:10 编辑

好好学习天天向上



刚才也去看了下官方文档 如果语句相当于易语言的判断  这也是易语言使用最多的流程控制语句
可是为什么还有分支判断这个语句
在C++内这个语句有什么不同吗?或者特殊情况下这个执行效率更高

回复

使用道具 举报

55

主题

313

帖子

2478

积分

金牌会员

Rank: 6Rank: 6

积分
2478
QQ
沙发
发表于 2022-11-19 20:59:27 | 只看该作者
理论上来说分支快,因为分支只能判断整数,如果是所有类型都可以判断,如果可能内部会解析类型,个人理解

评分

参与人数 1金钱 +1 收起 理由
xuwanbin + 1 感谢

查看全部评分

回复

使用道具 举报

444

主题

1万

帖子

4万

积分

超级版主

Rank: 8Rank: 8

积分
40533
板凳
发表于 2022-11-20 09:02:27 | 只看该作者
想用哪个用哪个

评分

参与人数 1金钱 +1 收起 理由
xuwanbin + 1 感谢

查看全部评分

安卓无障碍实战课:点击查看
交流群:641526939
回复

使用道具 举报

411

主题

2514

帖子

8290

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
8290
地板
发表于 2022-11-20 09:41:34 来自手机 | 只看该作者
几乎没差别,除非是异常苛刻的高精度速度要求

评分

参与人数 1金钱 +1 收起 理由
xuwanbin + 1 感谢

查看全部评分

回复

使用道具 举报

7

主题

247

帖子

2025

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
2025
5#
发表于 2022-11-20 12:11:00 | 只看该作者
正常来说低于4-5个的判断用如果否则,超过的就用分支判断,如果特别多的就做跳转表,,,,比如,内核的ssdt系统服务表,有几百个函数,不可能做几百个如果否则吧,说到底还是为了效率。。。
回复

使用道具 举报

39

主题

320

帖子

3176

积分

贵宾

火山官方交流群:831858564

Rank: 9Rank: 9Rank: 9

积分
3176
QQ
6#
发表于 2022-11-20 12:24:08 | 只看该作者
如果根据逻辑值来进行操作

分支 基本上是确定数值了
回复

使用道具 举报

32

主题

129

帖子

722

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
722
7#
 楼主| 发表于 2022-11-21 15:44:11 | 只看该作者
乐易论坛 发表于 2022-11-20 12:24
如果根据逻辑值来进行操作

分支 基本上是确定数值了

可是分支看起来不如如果一目了然
回复

使用道具 举报

26

主题

1900

帖子

6926

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
6926
8#
发表于 2022-11-22 15:54:09 | 只看该作者
如果否则就是 if、else、else if
会按顺序判断,一旦条件达成就不再执行下面的判断,但如果条件很多,恰好也在最尾,那就会判断多次

分支判断是 switch,会根据提供的值直接跳到支持的分支,只需要判断一次

结论上来看,简单的整数判断,5个条件内是如果否则快,超过5个是分支判断快
回复

使用道具 举报

87

主题

949

帖子

4891

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
4891
9#
发表于 2022-11-22 21:53:29 | 只看该作者
其实这就好比..数组的索引...
如果:  循环(0,数组.取成员数(),i){
   如果(i==5){        数组.取成员(i)
  }
}

分支:  数组.取成员(5)
一次定位,和多次判断定位的区别

回复

使用道具 举报

55

主题

298

帖子

3489

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
3489
10#
发表于 2022-11-23 11:39:19 | 只看该作者
超过一定上限,用如果会进入到C++的一个坑,编译会报错,具体报啥不记得了,先前有遇到过。

用分支就不会有这个问题,特别是主窗口里的菜单,5个以上直接用分支吧。

回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-11-24 15:22 , Processed in 0.100867 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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