我在我正在开发的代码库中遇到了很多dyn_cast。
和dynamic_cast一样吗?还是别的什么?我搜索了一下但找不到太多信息..
答案 0 :(得分:10)
dyn_cast
是LLVM API的一部分(也是第一个,第二个,第三个等等。在Google上点击)就像dynamic_cast一样,但是,一个区别是该类不需要像dynamic_cast一样的v-table。有关详细信息,请参阅manual。
答案 1 :(得分:3)
实际上,它是llvm::dyn_cast_or_null
,相当于dynamic_cast
。
如果传递空指针,这些将产生空指针,而llvm::dyn_cast
将保释。