与C一起使用第三方ADT(GLib、sys/queue.h等)
我想我的项目需要一个链表ADT,不幸的是似乎没有C的实际实现 在Google上出现的两个更频繁的选项是使用sys/queue.h和GTK+GLib 我绝对不认为我尝试重新发明轮子并自己编写它们有任何意义 我目前正在使用GNU工具链在linux下开发——如果我以后必须移植到Windows并将这些库嵌入到代码中,我是否有可能为自己制作一个棒呢 有了一个友好的网站和良好的文档,这些油嘴滑舌的东西看起来很不错。这可以被认为是C++的STL(或者可能的Boost)等价于C?与C一起使用第三方ADT(GLib、sys/queue.h等),c,C,我想我的项目需要一个链表ADT,不幸的是似乎没有C的实际实现 在Google上出现的两个更频繁的选项是使用sys/queue.h和GTK+GLib 我绝对不认为我尝试重新发明轮子并自己编写它们有任何意义 我目前正在使用GNU工具链在linux下开发——如果我以后必须移植到Windows并将这些库嵌入到代码中,我是否有可能为自己制作一个棒呢 有了一个友好的网站和良好的文档,这些油嘴滑舌的东西看起来很不错。这可以被认为是C++的STL(或者可能的Boost)等价于C? 总而言之,我想重用代码,但我想
总而言之,我想重用代码,但我想重新使用正确的代码。在C中,没有“正确的代码”可供重用。如果您不介意它的庞大性和缓慢的实现,GLib是一个不错的选择。由于它使用autoconf构建系统,您也会发现在windows下编译它很痛苦。在C中,没有“正确的代码”可供重用。如果您不介意它的庞大性和缓慢的实现,GLib是一个不错的选择。由于它使用autoconf构建系统,您也会发现在windows下编译它很痛苦。
GLib
是一个很好的选择,您已经发现它有很好的文档。如果你正在寻找链表,我想linux内核有我想你可以重用的。所以我不会在这三个选项中的任何一个上犯严重错误?我想不会。但是你必须考虑到1。如果您使用GLib有一个额外的库依赖项,如果您没有问题,则罚款,2。如果您使用sys/queue.h,那么所有代码都在头文件中,因此您只需包含头文件3即可开始使用它。如果你想使用内核代码,我想从源代码中复制一点代码就可以了。最后,看看什么最适合你的账单,并使用它:)。。。祝你好运GLib
是一个很好的选择,您已经发现,它有很好的文档。如果你正在寻找链表,我想linux内核有我想你可以重用的。所以我不会在这三个选项中的任何一个上犯严重错误?我想不会。但是你必须考虑到1。如果您使用GLib有一个额外的库依赖项,如果您没有问题,则罚款,2。如果您使用sys/queue.h,那么所有代码都在头文件中,因此您只需包含头文件3即可开始使用它。如果你想使用内核代码,我想从源代码中复制一点代码就可以了。最后,看看什么最适合你的账单,并使用它:)。。。祝你好运