透明类型需要哪些好处和情况?

时间:2016-09-18 14:59:29

标签: c types

Using opaque types是隐藏类型结构的可接受方法。但为什么不一直使用它们呢?要求透明类型的好处和情况有哪些,特别是在C?

2 个答案:

答案 0 :(得分:2)

不透明类型的编写和使用要复杂得多,因为你必须完成所有功能,甚至分配和初始化。

使用“透明”类型,您可以使用该类型的变量作为普通数据。例如,如果基础类型是算术类型,则需要进行一些计算。或者,如果它是struct,您可以直接使用这些成员。

答案 1 :(得分:2)

不透明类型要求您为任务编写完整的API,例如赋值,比较,格式化I / O,成员访问等,这可能是也可能不值得。

而且,有时候,使用普通的标量 是正确的答案;你会使用opaque类型来存储平均值吗?伯爵?