假设我有 3 个文件:file1.c、file2.c 和 globals.h。file1.c 和 file2.c 都包含 globals.h。file1.c 包含 file2.c 需要使用的结构。将结构本身设为外部或创建指向该结构的指针并在 globals.h 中将该指针设为外部是否更好?
问问题
5267 次
1 回答
4
如果我理解正确并且您的“结构”应该是一个全局对象(这是一个有问题的设计选择),那么我会这样做:
富.h:
typedef struct foo_struct
{
/* ... */
} foo;
extern foo the_foo;
foo.c: [如果你喜欢并且有意义,你可以将它合并到 file1.c 中。]
#include "foo.h"
foo the_foo = { /* ... */ };
file1.c和file2.c:
#include "foo.h"
#include "global.h"
/* ... */
于 2013-04-07T23:23:39.427 回答