Re: [问题] 请问Linux C有类似List<T>的用法吗?

楼主: DonaldTrunnp (The US President)   2018-02-12 13:20:50
因为我也曾经有过类似的需求
而写了一套一系列的 linked list 容器
https://github.com/kevin-dong-nai-jia/OpenGC3
更加注重在 性能的优化和代码的简洁性
目前以 MIT License 发布
我的实作与 Linux list_head 的差别如下:
1. 当前置定义 #define CC_STRICT
可以“完全遵守”使用 C99+ 标准规范
不使用任何 GCC C编译器的扩展语法
但是 Linux 的实作不能
2. 提供多种 list 的资料结构
包含 doubly/singly/exclusive-or list
但是 Linux 的实作只有第一种
3. 使用 non-intrusive 容器的设计
宣告和操作 list 变得非常地容易
只需要使用 ccdll(int) list;
这与 Linux 使用方式的有巨大的改进
4. 最重要的是
它优异的的设计使得它的效能可以
在处理极大量资料时大大提升
https://i.imgur.com/ehK1uDZ.png
5. 另一个最重要的是
它的多种测资已经通过 valgrind 的检查
不会造成内存外泄和非初始化资料存取
而且拥有详细的 documentations
描述每个操作的使用方法和宏依赖关系
这是 OpenGC3 专案被托管的地方
https://github.com/kevin-dong-nai-jia/OpenGC3
这是一个简易的范例
介绍如何使用 ccdll 对档案基于行的排序
./sort-by-lines <path-to-file> <strncmp-3rd-arg>
https://gist.github.com/kevin-dong-nai-jia/834e3d16c3c7f0f8496ef23945dbf7ca
希望你会喜欢 >皿<
喜欢并对你有帮助的话请帮我在上方点击一颗星星!
这会是我最棒的过年礼物(灿笑
※ 引述《takesi5200 (小咪)》之铭言:
: 问题(Question):
: 不好意思,.NET有List<T>集合,
: 可以很方便把资料放入集合里。
: 小妹因公司需求要在Linux平台上
: 也开发类似此方法。
: 请问Linux C有没有类似方法呢?
: 恳请个位高手指导,谢谢
作者: chrishappy11 (墨德)   2018-02-12 13:28:00
推~~
作者: galic (嘎利)   2018-02-12 13:55:00
总统先生的容器
作者: damody (天亮damody)   2018-02-12 14:28:00
好猛
作者: la8day (la8day)   2018-02-12 14:35:00
厉害了这
作者: ggBird (ggBird)   2018-02-12 14:48:00
伟大的祖国统领
作者: Sirctal (母猪母猪 夜里哭哭)   2018-02-12 16:02:00
你是不是在WWE的摔角擂台上写出来的??
作者: Neisseria (Neisseria)   2018-02-12 16:03:00
总统级的 container,已跪
作者: uranusjr (←這人是超級笨蛋)   2018-02-12 16:07:00
可是瑞凡, C# 通常是用 array list 不是 linked list
作者: dzwei (Cout<< *p << \n ;)   2018-02-12 16:19:00
跪了
作者: dannypsnl (秦书)   2018-02-12 16:49:00
点进去才发现按过了XEXD
作者: chrishappy11 (墨德)   2018-02-12 20:47:00
没想到在C#简单的List拿到C/C++竟然这么复杂
作者: LPH66 (-6.2598534e+18f)   2018-02-12 20:57:00
不, 只有 C 而已, C++ 的 STL 有 std::list<T>
作者: Ommm5566 (56天團)   2018-02-12 21:27:00
c++还有boost MPL库的list工具
作者: y3k (激流を制するは静水)   2018-02-12 22:00:00
已给星
楼主: DonaldTrunnp (The US President)   2018-02-12 22:36:00
谢谢 >皿<
作者: oiu850714 (oiu)   2018-02-12 23:26:00
这不是专题特优的大大吗
作者: descent (“雄辩是银,沉默是金”)   2018-02-12 23:26:00
不知道为什么, c 标准不加入这些资料结构
作者: hunandy14 (Charlott.HonG)   2018-02-13 01:49:00
各种黑魔法 已跪
作者: oiu850714 (oiu)   2018-02-13 02:37:00
用macro干出container,超醉...
作者: cashlalala (快来跟我做朋友)   2018-02-13 23:40:00
强~~~~~~
作者: andrew000129   2018-02-15 15:15:00
作者: Neisseria (Neisseria)   2018-02-15 17:57:00
补给星了,拜读 macro 语法中 >_<

Links booklink

Contact Us: admin [ a t ] ucptt.com