[英]C++ dynamic_cast behavior when cast fails
如果bad_cast
涉及指针, dynamic_cast
计算结果为NULL
,但如果bad_cast
涉及引用类型,则将抛出bad_cast
异常。
为什么这种行为上的差异?
谢谢
因为没有NULL引用这样的东西:)
实际上可能存在null引用(或更确切地说是对null的引用),但这是未定义的行为(UB)。 由于标准未定义 UB,因此dynamic_cast
引发了异常定义非常明确的异常。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.