发布
社区首页 >问答首页 >来自OOP背景,什么是一些C程序/库来帮助我获得"C方式“?

来自OOP背景,什么是一些C程序/库来帮助我获得"C方式“?
EN

Stack Overflow用户
提问于 2011-02-19 16:17:35
回答 4查看 146关注 0票数 2

我做OOP (C++/Java/PHP/Ruby)已经很长时间了,我真的很难想象像Linux或Apache这样的大型程序和库可以完全以命令式的方式编写。小型开源C项目是什么,我可以看看它是如何在C中完成的?

如果项目托管在GitHub上,则奖励积分。

EN

回答 4

Stack Overflow用户

发布于 2011-02-19 16:40:44

在C语言中,做事情的方式完全相同,但语言对它的支持却不那么明显。不是创建一个类来封装某种状态,而是创建一个结构。不使用隐式参数创建类成员,而是创建函数,显式传递一个struct*作为第一个参数,然后对结构进行操作。

为了确保封装不中断,您可以在头中声明结构,但只能在使用它的.c文件中定义它。虚拟函数需要更多的工作--但这只是在结构中放置函数指针的情况。在C中,这实际上比C++更方便,因为在C中,您可以手动填写vtable,对代码的哪一部分实现什么COM接口的部分(当然是C中的COM )有相当好的控制。

票数 5
EN

Stack Overflow用户

发布于 2011-02-19 17:02:12

您可能会发现ccan (模仿Perl的CPAN)的综合C存档网络很有趣。

目前它虽小,但其贡献是高质量的。许多贡献都是由linux内核开发人员做出的。

几乎所有的东西都属于“几千LOC”或更少的类别。

票数 1
EN

Stack Overflow用户

发布于 2011-02-19 17:10:47

如果您想要一个小示例,请尝试查看基本Linux实用程序的源代码。GNU二进制制作或任何其他GNU实用程序都有可用的完整源代码,并且代码基数相对较小(有些代码比其他代码大)。最简单的事情通常是从您以前使用过并且已经熟悉的实用程序开始。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5051887

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档