c中模块的概念

时间:2012-01-07 11:04:27

标签: c

我正在通过cline进行C ++ FAQ。它讨论了C ++类如何比“C风格模块”更好。可以参考文本here

但它没有讨论“C模块”究竟是什么。我在网上阅读了一些文章,但没有一篇涉及这个主题。

任何人都可以进一步解释这些概念吗?

1 个答案:

答案 0 :(得分:7)

C没有模块的概念,因此。它具有“翻译单元”的概念,它(大致)是.c文件加上它包含的标题的内容,直接或间接。翻译单元独立编译,然后链接在一起成为可执行程序。

翻译单元提供了一些命名空间管理:您可以将函数和变量的名称定义为static,这样它们只能在翻译单元中显示。这比C ++类更有帮助,因为名称冲突更容易避免。

看看像Python这样的语言,以获得更好的解决方案。