首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C语言中是否存在类型擦除概念?

C语言中是否存在类型擦除概念?
EN

Stack Overflow用户
提问于 2016-11-22 19:47:09
回答 1查看 190关注 0票数 0

我想知道在C语言中是否使用类型擦除技术。当类型铸造完成时,在C中会发生什么?它是否使用类似于类型擦除和向下铸造的概念?

类型擦除和类型铸造的主要区别是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-22 21:19:52

您是Java开发人员吗?

如果是的话,你需要忘记很多事情,并学到很多东西。

向下铸造意味着继承。所以这不是C。

C几乎可以将任何东西转换成任何东西(C假设您知道自己在做什么,这与Java、C#和其他方面相反)

类型擦除是Java概念,因为JRE在运行时没有泛型,只有原始类型。

在C中,运行时只有二进制代码,就像在汇编中一样,这就是我们需要拥有闪电般的可执行文件所需的全部内容(请记住,几乎所有编译器、框架或虚拟机都是在C或C++中构建的)。

在C中,没有这样的RTTI (运行时类型信息),我们不需要这样做,因为C的目标是直接在金属上编程。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40750385

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档