comp.lang.c FAQ 列表·
问题 1.9
问我如何创建一个“半全局”变量,即一个私有的、在多个源文件中散布的少数函数的变量?
答C 语言中无法做到这一点。如果不可能或不方便将所有函数放在同一个源文件中,通常有两种解决方案:
- 为库或一组相关例程中的所有函数和全局变量的名称选择一个唯一的命名约定,并警告该包的用户不要定义或使用与该命名约定匹配的任何符号,除非那些被记录为供公众使用的符号。(换句话说,一个未被文档记录但具有该命名约定的全局符号,按照惯例是“私有的”。)
- 使用以下划线开头的名称,因为普通代码不应使用此类名称。(有关更多信息,请参阅问题 1.29,以及用户和实现命名空间之间的“无人区”的描述。)
也可能可以使用特殊的链接器调用来调整名称的可见性,但任何此类技术都超出了 C 语言的范围。
关于此 FAQ 列表 关于 Eskimo 搜索 反馈 版权由
托管