多项选择题
在C++中,有4种类型转换方式xxx_cast(E):static_cast,dynamic_cast和reinterpret_cast.下面说法是那些属于dynamic_cast()
A.该运算符把E转换为T类型,但没有运行时类型检查来保证转换的安全性
B.用于类层次结构中基类和子类之间指针或引用的转换。进行upcast(把子类的指针或引用转换成基类表示)是安全的;进行downcast(把基类指针或引用转换成子类表示)时,由于没有动态类型检查,所以是不安全的。
C.运算符把e转换成T类型的对象。T必须是类的指针、类的引用或者void*。
D.具有运行时类型检查的功能,比static_cast更安全。如果不能转化成功返回空指针
点击查看答案
相关考题
-
多项选择题
有定义intx=3;则如下语句中正确的是:()
A.x+=(x++)
B.x+=(++x)
C.(x++)+=x
D.(++x)+=(x++) -
单项选择题
对代码:int(*x[20])(int);的如下说法中正确的是:()
A.说明不合法
B.是一个指针,它指向一个具有二十个整型元素的一维数组
C.是一个指针数组,每个指针指向一个具有二十个整型元素的一维数组
D.是一个指针数组,每个指针指向一个输入参数为int返回类型为int的函数 -
单项选择题
32位Windows下程序如下line1:voidfunc(void)line2:{line3:intx;line4:switch(x)line5:{line6:case0:line7:inti=1;line8:{intj=i;}line9:case1:line10:intk=1;line11:}line12:}则如下描述中正确的是:()
A.程序无语法错误能通过编译
B.程序第4行有错误无法通过编译
C.程序第7行有错误无法通过编译
D.程序第10行有错误无法通过编译