C++ 正在检查BOOL';s值比只更新它更有效吗?
我有一个快速的效率问题 假设我有一个布尔值,经常设置为YES(当玩家在地面上时) 只检查布尔值是否更有效,即C++ 正在检查BOOL';s值比只更新它更有效吗?,c++,objective-c,c,performance,C++,Objective C,C,Performance,我有一个快速的效率问题 假设我有一个布尔值,经常设置为YES(当玩家在地面上时) 只检查布尔值是否更有效,即 如果(!character.isOnGround)character.isOnGround=YES 或者将值设置为YES(是)会更有效吗 character.isOnGround=YES 基本上,问题是这样的。if语句比赋值快吗 if (!character.isOnGround) character.isOnGround = YES; 将需要: 变量的读取 状况检查 分支 变量的写
如果(!character.isOnGround)character.isOnGround=YES代码>
或者将值设置为YES(是)会更有效吗
character.isOnGround=YES
基本上,问题是这样的。if语句比赋值快吗
if (!character.isOnGround) character.isOnGround = YES;
将需要:
- 变量的读取
- 状况检查
- 分支
- 变量的写入
尽管优化编译器可能会崩溃为最后一条语句
将需要:
- 变量的读取
- 状况检查
- 分支
- 变量的写入
尽管优化编译器可能只是折叠到最后一条语句。No。只需设置值。No。只需设置值。