嗨,亲爱的!
我知道 if 语句在 C++ 中是一个昂贵的语句。我记得有一次我的老师说 if 语句在计算机时间意义上是一个昂贵的语句。
现在我们可以通过在 C++ 中使用 if 语句来完成所有事情,所以从编程的角度来看这是非常强大的语句,但从计算机时间的角度来看它是昂贵的。
我是初学者,我在学习 C++ 类(class)后正在学习数据结构类(class)。
我的问题是
大量使用 if 语句对我来说更好吗?
最佳答案
If 语句被编译成 conditional branch .这意味着处理器必须根据条件跳转(或不跳转)到另一行代码。在一个简单的处理器中,这会导致 pipeline stall ,通俗地说,这意味着处理器必须放弃早先完成的工作,这会浪费流水线的时间。但是,现代处理器使用 branch prediction以避免停顿,因此 if 语句的成本会降低。
总而言之,是的,它们可能很昂贵。不,您通常不必担心。但是 Mykola 提出了一个单独的(尽管同样有效的)观点。 Polymorphic code通常(为了可维护性)优于 if 或 case 语句
关于c++ - C++中的if语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2183017/