如果你学习了一段时间的C语言,还是有一种无从下笔的无力感,那么不妨从造轮子开始。造轮子的起手式就是这种无力感的“破壁人”。 首先我推荐Linux平台,如果你还没有安装Linux,请关注我另一个专栏弓箭维修指北。 正式进入开发阶段,最头疼的问题就是给自己的项目起个名字,一定要威武雄壮霸气听到就腿软的那种horrib...
是的,单纯就调用这个动作来说,没有问题,问题出在调用方拿到源码要怎么知道,哦,卧槽,我首先要编译出so库文件然后再把so扔到/usr/lib里面再把.h文件扔到/usr/include里呀。这种库也太没有“服务意识”了吧,我常说,我们造轮子的一定要有服务意识,这么搞调用方还要对着你长长的编译文档来step by step。会吐的。
于是花了数个周末的时间用C语言撸了一个DBProxy(MySQL协议)。在笔者的github中给这个DBProxy起名为Hero。 前言 笔者在阅读了一大堆源码后,就会情不自禁产生造轮子的想法。于是花了数个周末的时间用C语言撸了一个DBProxy(MySQL协议)。在笔者的github中给这个DBProxy起名为Hero。 为什么采用C语言 笔者一直有C情节,求学...
自己造的一个简单的小轮子。 自己造轮子,当然主要目的还是为了学习原理。不过同时,和别人的轮子相比,哪怕别人的轮子再好,还是自己造的轮子自己用起来最舒服。 “Key”必须是“ASCII字符串”,“Value”使用的是value_t作为占位符,从而支持泛型,可以使用任意的数据类型。 然后也感受到了,对于不同数据类型的Key,其实...
下面就着这段时间的学习心得体会和耳濡目染,介绍一些关于C++11的新认识。同时,在工作和学习之余,自己也模仿着造了两个小轮子,已经托管到GitHub上面了——虽然简单,也很不专业,但是对C++11的新特性都覆盖了不少,算是在学习中动手、在实践中改进吧。
那么虽然大家没有看到我在main函数中调用添加链表,原因是带constructor属性的函数会在main函数前自动运行。而关于module的注册,我用的就是之前自己做的仿linux双链表实现的module注册和遍历。 四,总结 学以致用,乐趣无穷,我喜欢对比,喜欢用不同的方式造轮子,折腾吧!说不定过段时间我又把框架改了,哈哈~...
值得推荐的C/C++框架和库—造轮子前先看看现有的轮子,http://www.cppblog.com/merlinfang/archive/2014/12/26/209311.aspx值得学习的C语言开源项目-1.WebbenchWebbench是一个在l...
我们先说一个概念,就是库(Library)。库就是编程专家写好的代码,我们可以拿来直接使用,这样能够节省开发成本,提高开发效率,并且库代码的执行效率、严谨性、安全性和规范性要明显优于我们自己编写的代码,市场上有很多优秀的库,有的收费,有的免费,我们要善于利用这些库,尽量不要重复造轮子。库一般分为两种:...
自定义头文件,是的,相当于自己“造轮子”,在实际的项目开发中比较有可能会用到,这对于提高开发效率很有帮助。下面就介绍一下自定义头文件的步骤: 第一,在C源文件的同一目录下(现阶段暂且就放在同一目录下吧),创建一个".h"后缀名的文件,文件名自定义,比如test.h; ...
简介:【C/C++ 造轮子】Linux异步计时器:深入探讨和应用 (Linux Asynchronous Timers: An In-depth Exploration and Application) 1. 引言 (Introduction) 在我们的日常生活中,时间是无处不在的。无论是烹饪、锻炼、还是编程,计时都是一个关键的元素。特别是在计算机领域,异步计时为我们提供了一种方法,使得在等待某...