【发布时间】:2017-03-08 19:05:55
【问题描述】:
variableName = pointerName -> getValue();
假设getValue() 有两条路线,其中只有一条有返回值(未定义),但它仍然可以编译。如果这是在实时场景中,如果没有任何东西检查或捕捉到这个不归路的错误,会发生什么?它会使程序崩溃吗?
【问题讨论】:
-
能否贴出代码让大家看清楚你的问题?
-
未定义的行为。任何事情都有可能发生。
-
您是在要求我们解释未定义行为的行为吗?
-
我认为 OP 不知道 UB 是什么。
-
“程序会崩溃吗?”可以。它还可以继续运行并格式化您的驱动器。未定义的行为没有具体的结果或结果。