![](https://img-blog.csdnimg.cn/20200419230813927.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
C/C++
关于C++的使用、特定问题的解决以及学习总结
JunJie_1107
勿在浮沙筑高台
展开
-
【线程同步】使用 C++ 实现 waitgroup
使用 条件变量、独占锁、原子类型,实现 waitgroup 机制原创 2022-07-22 10:05:04 · 647 阅读 · 1 评论 -
C++17:关于最大公约数和最小公倍数的实现接口
C++ 17中引入了对最大公约数和最小公倍数的计算,函数接口如下:std::lcm() : 最小公倍数std::gcd() :最大公约数原创 2021-09-19 23:40:09 · 590 阅读 · 1 评论 -
BUG:C++函数返回值问题引起的逻辑错误
记一次业务代码中的幼稚型BUG。。。原创 2021-08-17 21:40:44 · 949 阅读 · 0 评论 -
Linux C regex的使用及性能测试
regex的测试代码和性能测试原创 2021-08-09 18:37:09 · 455 阅读 · 0 评论 -
C++中结构体允许设置初始值
在C++中,结构体的变量可以直接赋值,声明后可以直接使用。原创 2021-06-21 21:31:30 · 926 阅读 · 0 评论 -
使用互斥锁保护临界区,为什么还要搭配条件变量?
使用互斥锁保证临界区的操作是线程安全的,但是单纯的使用互斥锁会导致CPU资源过多的浪费在检测条件是否满足的过程中。搭配条件变量的通知机制,会有效减少频繁的检测,节省CPU资源的消耗。原创 2021-05-17 15:01:53 · 333 阅读 · 0 评论 -
线程竞速(C++11)
本文的代码描述一场线程间的竞速比赛,欢迎你来看看这场比赛是否公平?原创 2021-05-16 22:33:30 · 189 阅读 · 0 评论 -
Linux下,使用管道进行进程间通信
管道:用于连接两个进程,实现其读写通信的共享文件,是一种以先进先出方式保存一定数据量的特殊文件,一般是单向的,写端将数据写入管道的一端,读端从管道的另一端读取数据。原创 2021-05-16 10:46:59 · 372 阅读 · 0 评论 -
关于STL中二分查找算法的使用
STL中封装了二分查找算法,其接口为lower_bound/upper_bound/binary_serach,本文介绍了各个接口的含义及用法,另外还有有序集合set中关于二分查找接口的使用。原创 2021-04-17 07:33:33 · 441 阅读 · 0 评论 -
快速排序的优化及C++实现
关于快速排序的三点优化及C++代码实现原创 2021-04-16 16:37:13 · 420 阅读 · 0 评论 -
使用C++实现线程池
使用C++的函数对象封装具体的任务,使用线程池来异步执行这些任务。线程池中实现了任务队列和线程池组,每个线程检测任务队列中有任务,就会执行,执行完毕继续等待新任务的到来。原创 2021-04-16 15:02:08 · 705 阅读 · 0 评论 -
C++求解最小公约数和最大公倍数
实现对两数的最大公约数和最小公倍数的求解原创 2021-03-01 21:35:35 · 343 阅读 · 0 评论 -
C++中关于this_thread的全局函数
介绍了C++中关于线程的几个全局函数。包括get_id()/sleep_for()/sleep_until()/yield()原创 2021-02-28 10:56:00 · 829 阅读 · 0 评论 -
使用C++ 生成随机数:STL中的随机数引擎+分布
本文介绍C++随机数引擎及分布,并介绍了产生随机数的步骤及示例。原创 2021-02-27 18:26:36 · 2861 阅读 · 0 评论 -
C++输出八进制、十进制、十六进制
在需要输入输出的数之前加上std::oct / std::hex / std::dec 即可原创 2021-02-27 17:12:08 · 4584 阅读 · 2 评论 -
为什么正式项目中尽量不要包含<iostream>头文件?
不要将iostream作为头文件包含的原因是对应的编译消耗原创 2021-02-27 16:38:13 · 1843 阅读 · 0 评论 -
Singleton 单例模式的C++实现
单例模式的介绍及C++实现原创 2021-02-21 16:58:42 · 166 阅读 · 0 评论 -
当unique_lock无法获取锁时,它会阻塞吗?(实例验证)
当unique_lock无法获取锁时,其会阻塞,直到其他对象释放锁,才会继续执行。原创 2021-02-18 14:56:00 · 1496 阅读 · 0 评论 -
各类排序算法的C++实现
使用C++实现六类经典排序算法原创 2020-12-22 19:41:34 · 180 阅读 · 0 评论 -
C++中重载、重写、重定义的区别
重载、重写、重定义,傻傻分不清楚!原创 2020-12-20 16:38:25 · 317 阅读 · 0 评论 -
C++中虚函数和纯虚函数的区别
C++面向对象程序设计有三大思想:抽象、继承、多态原创 2020-12-20 16:14:18 · 10719 阅读 · 4 评论 -
CPU的大端模式(Big-endian)和小端模式(Little-endian)及判断方式
关于大端模式和小端模式的概念及判断方式(内含代码实例)原创 2020-12-15 22:15:57 · 1145 阅读 · 0 评论 -
C/C++中volatile关键字的含义
volatile关键字的含义及实例代码原创 2020-12-15 21:47:05 · 379 阅读 · 0 评论 -
C/C++中static关键字的作用是什么?
关于static变量的特点及应用场景(内含代码示例)原创 2020-12-15 21:26:59 · 1190 阅读 · 1 评论 -
C++中的4种运算符转化以及它们的不同点
关于const_cast、dynamic_cast、reinterpret_cast和static_cast的含义及代码示例原创 2020-12-15 21:13:41 · 237 阅读 · 0 评论 -
C/C++中关于常量指针和指针常量的概念分析
常量指针:一个指针,指向常量;指针常量:一个指针,且是一个常量原创 2020-12-07 07:59:14 · 179 阅读 · 0 评论 -
main()函数结束之后会执行其他语句吗?
使用atexit()函数,事先注册一个无参数、无返回值的函数,就会在main()函数结束之后,得到执行。原创 2020-12-06 19:05:02 · 780 阅读 · 0 评论 -
最小生成树的性质与prim算法(C++实现)
prim算法的C++实现原创 2020-11-29 10:39:51 · 364 阅读 · 0 评论 -
Dijkstra(迪杰斯特拉)算法: 求单源最短路径(C++实现)
迪杰斯特拉算法的C++实现原创 2020-11-28 12:07:19 · 1370 阅读 · 0 评论 -
关于C语言中字符串以‘\0‘结尾的原因
使用‘\0’来表示字符数组的结束原创 2020-11-25 16:54:32 · 8170 阅读 · 0 评论 -
使用C++实现二叉查找树(二叉搜索树)的创建、查找、插入、删除等操作
使用C++实现常见的关于二叉查找树的操作接口原创 2020-11-22 23:34:54 · 4424 阅读 · 3 评论 -
使用C++实现二叉树及其常用接口(创建、遍历、搜索、插入、还原)
关于二叉树的创建、遍历、搜索、插入、还原的C++接口实现原创 2020-11-22 20:09:48 · 371 阅读 · 0 评论 -
通过函数指针调用类成员函数的方法
通过函数指针调用一个函数的时候,此函数必须有具体的地址,因此当调用一个类成员函数的时候,此成员函数必须声明为static,即静态成员函数,这样就能通过函数指针获取到成员函数的地址,进而调用。原创 2020-11-20 12:12:05 · 5202 阅读 · 5 评论 -
C++中关于堆的操作接口:make_heap()、sort_heap()、is_heap()、push_heap()、pop_heap()等
关于STL对堆存储结构的支持接口的介绍及应用make_heap()、sort_heap()、pop_heap()、push_heap()、is_heap()、is_heap_until()原创 2020-10-13 18:18:58 · 387 阅读 · 0 评论 -
C++中函数指针的声明与使用实例
关于函数指针使用的一个小栗子原创 2020-09-13 21:23:18 · 145 阅读 · 0 评论 -
C++中关于getline()和cin.getline()的使用
C++中获取一整行输入时可以使用getline()及cin.getline()进行操作原创 2020-08-28 17:48:44 · 322 阅读 · 0 评论 -
C语言文件读写的基本流程
实现文件读写的基本流程原创 2020-08-07 18:14:12 · 300 阅读 · 0 评论 -
素数表的C++实现:快速进行素数筛选(埃氏筛法)
计算十亿内的素数个数原创 2020-08-05 21:40:51 · 1146 阅读 · 0 评论 -
printf()如何进行“左补零”的操作
主要记录printf()中,如果数字不够位置,左侧补零的操作原创 2020-08-05 08:15:15 · 8135 阅读 · 0 评论 -
静态全局函数、静态成员函数及静态成员变量的声明与使用
关于静态函数(类成员及非类成员)和静态变量的声明与使用原创 2020-08-03 16:05:43 · 2710 阅读 · 0 评论