c – 这不是贬低?
作者:互联网
如果我做
double d = 34.56;
int i = (int)d;
我不是“沮丧”吗?
要么
这个术语只用于类和对象吗?
我很困惑,因为在这种情况下,我们从一个较大的双向“向下转换”到一个较小的int,但是在类的情况下,我们从一个较小的基类“向下转换”到一个更大的派生类.
在某种意义上,这两种惯例是不是相反?
解决方法:
不,你没有失败.你只是在施法,而你正在砍掉小数后的任何东西.
羽绒在这里不适用.原语int和double不是C中的对象,并且在类层次结构中的两个对象的方式上彼此不相关.它们是独立的原始实体.
向下转换是指将一个对象转换为另一个对象的行为.它指的是从类层次结构的根向下移动的行为.它与相关类型的大小无关.
标签:downcast,c,conventions 来源: https://codeday.me/bug/20190724/1518715.html