gpt4 book ai didi

c - 使用 extern struct 或 extern pointer to struct 的最佳实践?

转载 作者:行者123 更新时间:2023-12-05 01:37:33 28 4
gpt4 key购买 nike

假设我有 3 个文件:file1.c、file2.c 和 globals.h。 file1.c 和 file2.c 都包含 globals.h。 file1.c 包含 file2.c 需要使用的结构。是将结构本身置于外部还是创建指向结构的指针并在 globals.h 中将该指针置于外部更好?

最佳答案

如果我理解正确并且你的“结构”应该是一个全局对象(这是一个有问题的设计选择),那么我会这样做:

foo.h:

typedef struct foo_struct
{
/* ... */
} foo;

extern foo the_foo;

foo.c: [如果你喜欢并且有意义,你可以将其合并到 file1.c 中。]

#include "foo.h"

foo the_foo = { /* ... */ };

file1.cfile2.c:

#include "foo.h"
#include "global.h"

/* ... */

关于c - 使用 extern struct 或 extern pointer to struct 的最佳实践?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15869021/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com