首页 相关文章 C++的数据类型转换关键字dynamic_cast

C++的数据类型转换关键字dynamic_cast

  在使用C++编程时,经常要用到不同数据类型之间的类型转换,可能大家对C语言的类型强制转换比较熟悉,就是在表达时前面加一个(强制转换类型)。在C++中仍然可以用C方式的对不同类之间数据类型转换,但是,C++提供了更好的数据类型转换方式,就是利用关键字dynamic_cast来完成对不同类之间数据类型之间的转换。

  dynamic_cast的使用格式是:

  dynamic_cast T (ptr)

  其中,T必须是一个类的的指针或引用,也可以是 void *,参数ptr必须是一个能得到一个指针或者引用的表达式。

  如果T是 void * ,那么 ptr 必须是一个指针,而不能是一个引用。

  如果转换成功,dynamic_cast T (ptr) 将把ptr转换成你想要转换的类型,如果不成功,返回0(NULL),如果转换到一个引用类型失败,将会触发一个Bad_cast exception异常。

  下面的代码是dynamic_cast的实例代码:

  

// HOW TO MAKE DYNAMIC CASTS  
 
// 这个...[ 查看全文 ]

2016-02-19 标签:

C++的数据类型转换关键字dynamic_cast的相关文章

手机页面
收藏网站 回到头部