gpt4 book ai didi

c++ - "if"条件下的变量赋值

转载 作者:IT老高 更新时间:2023-10-28 12:44:06 25 4
gpt4 key购买 nike

我最近刚刚花了一些时间来找出我的代码中的一个由拼写错误引起的错误:

if (a=b)

代替:

if (a==b)

我想知道是否有任何特殊情况需要在 if 语句中为变量赋值,或者如果没有,为什么编译器不抛出警告或错误?

最佳答案

if (Derived* derived = dynamic_cast<Derived*>(base)) {
// do stuff with `derived`
}

虽然这经常被称为反模式(“使用虚拟调度!”),但有时 Derived 类型具有 Base 根本没有的功能(并且,因此,不同的功能),这是打开语义差异的好方法。

关于c++ - "if"条件下的变量赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17681535/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com