
C++11
文章平均质量分 65
GK_2014
每天努力一点,坚持一点,成长一点,一段时间再回头,就会发现这就是成长的路。
展开
-
jsoncpp在Ubuntu和Windows下的编译与使用
jsoncpp是json的一个C++库,编译过程比较傻瓜:git clone https://github.com/open-source-parsers/jsoncpp.gitcd jsoncpp-mastermkdir buildcmake ..make在终端执行如上命令后在 jsoncpp-master/build/lib目录下生成了libjsoncpp_static.a在Qt工程的pro文件加入jsoncpp库的代码路径和库路径INCLUDEPATH += /home/g原创 2020-12-01 16:42:04 · 620 阅读 · 1 评论 -
一个简单的C++线程池demo
demo代码包含两个类,一个是ThreadPool类,对线程池做了封装,另一个FunGroup类,用于线程池的串行处理。线程池类可以用并行或串行的方式执行可调用对象。当并行执行可调用对象时,只需要调用AddFun函数将调用对象直接传入fun_queue_队列中,另外唤醒睡眠中的子线程处理该可调用对象。当串行执行可调用对象时,需要在AddFun函数指定可调用对象所属的队列组,该队列组保存在fun_groups_中,队列组中的可调用对象依赖于上一个可调用对象执行完成才能被执行。ThreadPool.h原创 2020-09-29 17:26:34 · 551 阅读 · 0 评论 -
std::vector之push_back&emplace_back
一直都说尽量用C++11的emplace_back替换push_back,前者的效率究竟比后者快多少不甚了解,写个demo简单测试下看看,下面这个demo程序我写了个Pt类用于测试,除了普通构造函数外还有拷贝构造和移动构造,3个静态变量分别对3种构造方法的调用次数进行统计。下面直接用push_back看看3个构造函数的调用情况,编译结果如下:construct_cnt_:100,copy_construct_cnt_:127,move_construct_cnt_:100个人理解:下面的代码调用原创 2020-08-19 16:32:58 · 1950 阅读 · 0 评论