作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
在C++中,我们有抽象和数据隐藏。我们可以通过 C 实现吗?
最佳答案
在 .C 文件中定义您的结构,并且仅在 header 中“转发声明”该结构。
因此您的 .C 文件可能包含以下内容:
struct Car
{
char *brand;
int maxspeed;
};
您的 .H 文件可能包含以下内容:
typedef struct Car *CarHandle;
然后编写函数来操作 Car(setter、getter 等),并将它们放在定义结构的同一个 .C 文件中。当然,函数原型(prototype)应该放在header中。
现在调用者可以使用 CarHandle 和操作 CarHandle 的函数,但永远看不到 Car 结构中的内容。
关于c - C中的 "protecting a variable"是什么?它是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2963838/
我是一名优秀的程序员,十分优秀!