![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++语言学习
邓文尧
这个作者很懒,什么都没留下…
展开
-
线程池C++实现,底层支持pthread,windows平台
线程池线程池的概念在这里就不一一赘述,本文主要实现的线程池是基于pthread库,然后开发环境的windows平台,IDE VS2015。本文主要实现的功能就是实现一个线程池,线程池的大小可以用户自定义,线程处理函数也可以用户自定义。操作简单,使用方便,目前只是初次编写,如果有问题欢迎大家提出。至于pthread在window的配置和普通的添加include lib dll文件一样。结构图整个流程大概如此,在处理事件中存放的ThreadTask*整个基类的指针,只要添加任务的时候继承于基类,并重写d原创 2020-08-26 22:44:53 · 635 阅读 · 0 评论 -
QCamera读取多个摄像头并保存到指定路径
QCamera的使用使用环境VS2015 + QT5.11详细的使用方法可以参照QT中的例程,基本例程中包含了大部分的使用方法。本文中主要介绍一些简单的方法。如果需要使用QCamera需要优先在pro文件中包含multimedia;multimediawidgets。当然也可以不写,如果不写每次包含头文件的时候应该如下包含#include<QtMultimedia/QCamera>#include <QtMultimediaWidgets/QCameraViewfinder>原创 2020-08-17 21:29:27 · 1964 阅读 · 4 评论 -
static_cast,onst_cast,dynaminc_cast reinterpret_cast
C++的类型转换static_cast,onst_cast,dynaminc_cast reinterpret_cast是C++提供的四种类型转换的函数,在c语言中通常是使用(类型)方式转换的,这一般看起来不是很友好,所以C++提供四种类型转换的函数。在类型转换之前谈点别的如果使用类型转换的时候,特别要注意我们在做什么,否则容易出现意想不到的错误。C++在32位的机器中,对于低于32位的整形数据会发生整型提升,也就是先转换成32位的数才能进行计算。当我们从小的类型例如,char等转到大的类型,是不会发原创 2020-05-31 15:16:00 · 292 阅读 · 0 评论 -
智能指针share_ptr,unique_ptr,weak_ptr。再也不要担心内存管理的问题了
share_ptr共享智能指针,从名字就能知道,它是一个共享的指针,也就说开辟一块堆空间,大家一起共用。那我们怎么去管理这片共有的内存呢?share_ptr是一个模板类,在它里面有个成员count,专门用来记录有多少个指针同时指向了这份内存,如果有一个对象发生了析构,但是count值不为0表明还有其他对象在使用这一片内存,就不需要释放这块内存。所以这种指针一般用于多个类对象共享一块内存。下面从debug模式观察一下整个在内存上的存储情况下面给出一个特别注意的地方,如果用一个指针去初始化智能指针,原创 2020-05-23 10:10:06 · 671 阅读 · 0 评论 -
归并排序,单链表排序原理
归并排序原理归并排序的目的就是分而治之,把一个大的问题,分解成若干个小问题,然后再把问题合并起来。具体的原理如下图所示那就是说,整个过程需要两步,一:分,二:合。对于普通的数组我们可以递归的分,然后合并。如下所示:#include<iostream>#include<vector>using namespace std;void mergeTwoVecto...原创 2020-04-27 22:37:26 · 439 阅读 · 0 评论 -
C++函数模板和类模板Template
泛型泛型(Generic Programming)即是指具有在多种数据类型上皆可操作的含意。泛型编程的代表作品 STL 是一种高效、泛型、可交互操作的软件组件。泛型编程最初诞生于 C++中,目的是为了实现 C++的 STL(标准模板库)。其语言支持机制就是模板(Templates)。模板的精神其实很简单:参数化类型。换句话说,把一个原本特定于某个类型的算法或类当中的类型信息抽掉,抽出来做...原创 2019-05-27 20:17:06 · 242 阅读 · 0 评论 -
C++11多线程的创建,数据共享,死锁,互斥量等线程概念及示例代码
多线程:概念:软件或者硬件上实现多个线程并发执行的技术。比如我们一遍看电视,一遍吃瓜子,这就是多个线程。那相比于多进程怎么理解呢?比如电视机在放电视,洗衣机此时也在洗衣服,这就是多进程。一般来说线程是发生在进程之中的,我们把吃瓜子和看电视都理解为发生在个人活动这个进程中的。C++11标准的实现主要使用了一个线程类,thread。至于内部的具体实现,在这里就不做介绍。1.尽量不使用detach...原创 2019-09-05 19:08:18 · 360 阅读 · 0 评论