![](https://img-blog.csdnimg.cn/20210520114528622.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
C++
文章平均质量分 78
更新C++的一些总结和问题
addict_jun
到底是以欲望,野心为燃料,还是顺气自然,又或者以高尚的理想去照亮前方的路呢。
展开
-
OpenCV基础入门
图像是人类视觉的基础,是自然景物的客观反映。模拟图像通过某种物理量的强弱变化来记录图像信息,所以是连续变换的。因为模拟信号容易受到干扰,如今已经被数字图像全面替代数字图像,其亮度用离散的数值表示位数:0~255灰度图,其中0,代表最黑,255,表示最白图像分类二值图像:由0和1组成的二值图像灰度图:采用像素8位的非线性尺度来保存,有256级灰度,如果16位,则65536级灰度彩色图:通常采用RGB三个分量表示,分别介于(0~255),采用8位无符号整形。原创 2022-12-22 19:51:25 · 1614 阅读 · 0 评论 -
设计模式之单例模式(C++)
这个操作过程其实是非原子操作的,也就是说,在这过程中,CPU可能会发生重排序的情况。,这个接口可能会被调用多次,所以应该判空语句内部加锁,那么可能同时多个线程运行到判空语句,所以在互斥区的第一句中还需要判空检查一次,这就是。对于单例类的实例来讲,有时候必须要将当前实例释放掉,比如关闭文件,释放外部资源。只有一个实例的情况下,向整个系统提供这个实例,那么这个实例是必属于这个类的,所以这个实例是。显而易见,懒汉式的实例初始化在第一次调用获得类实例接口时,不调用则不初始化,比较懒。原创 2022-12-11 16:15:42 · 303 阅读 · 0 评论 -
C++虚函数和纯虚函数
定义一个函数为虚函数,不代表函数为不被实现的函数。定义他为虚函数是为了定义一个函数为纯虚函数,才代表函数没有被实现。定义纯虚函数是为了实现一个接口,起到一个规范的作用,规范继承这个类的程序员必须实现这个函数。原创 2022-12-10 16:06:18 · 607 阅读 · 0 评论 -
opencv+vs studio环境配置
首先将opencv_ffmpeg342_64.dll放入到windows\system32中,将opencv_world342.dll和opencv_world342d.dll放到windows\syswow64文件夹中。然后移动依赖文件,这里有三个文件,opencv_ffmpeg342_64.dll和opencv_world342.dll以及opencv_world342d.dll。最后就是配置的opencv的系统位数要和vs开始的项目一致。在VC++目录中,包含目录和库目录包含opencv 的库。原创 2022-11-02 20:58:09 · 707 阅读 · 0 评论 -
C++中++i比i++要快吗?
最近准备攻陷力扣,当然也才刚刚开始,准备每50题做一个思想小结。但是最近在做的过程中,发现了一个问题,那就是官方题解常常给的for循环都是++i ,包括其他人的题解,同样用的++i,这里我就很疑惑,难道++i比i++要快吗,不然两种写法我应该在题解中都会看到,但是我看到的几乎都是++i,那么很明显,有问题!废话不多说,直接开始上干货。原创 2022-10-30 09:50:03 · 729 阅读 · 2 评论 -
C++之泛型编程
模板:建立通用的与的算法模板。可复用性增加,冗余减少。C++泛型编程的知识其实没有那么多,但是能够玩出的花式确实非常多,最好的就是 参考STL标准库的学习,这是泛型编程的巅峰之作!!首先来看C++的体系图设计模式是通过增加代码复杂性,来换取代码的灵活性,而学习设计模式最好从项目中汲取经验,不然就等着面试的时候背一下八股文,应付一下也是无所谓的。泛型编程,比如STL,Boost库代表了C++顶尖开发者的水平。主要分为两个部分,。原创 2022-10-26 17:50:06 · 613 阅读 · 0 评论 -
C++6种基础线程的应用
joinable()判断当前线程是否可以做join或者detach过程,可以返回true,不可以返回false。join()函数加入,回合线程,阻塞主线程,等待子线程执行结束,才会回到主线中。detach()函数,分离,打破依赖关系,子线程执没执行完,我也不知道。多个线程共享数据的时候,出现冲突,这里就需要线程锁。原创 2022-10-22 14:57:46 · 235 阅读 · 0 评论 -
C++异常处理和断言
异常是程序在执行期间产生的问题。C++ 异常是指在程序运行时发生的特殊情况,比如尝试除以零的操作。异常提供了一种转移程序控制权的方式。C++ 异常处理涉及到三个关键字:**try、catch、throw**。assert用于检查产品上线前错误以及修复代码,生产环境不使用。用来检查非法情况而不是错误情况的,用来帮开发者快速定位问题的位置。异常捕获用于处理不可控制的错误,生产环境可使用。用于对程序发生异常情况的处理,增强程序的健壮性和容错性。原创 2022-10-21 13:52:55 · 789 阅读 · 0 评论 -
C++内联函数与宏函数
总结宏函数的使用不仅仅是为了炫技,而是一种高效的手段,同样C++提供的内联函数,也是非常有效的手段,这里来详细说明一下宏函数和内联函数的区别与相同点。废话说到这里,开始直接上干货。原创 2022-10-10 13:52:34 · 809 阅读 · 0 评论 -
C++之不同数值类型的运算及隐式转换
在C++的编写过程中,我们常常会计算不同类型之间的数据,比如long与short进行加减运算,又或者unsigned int与int之间的转换会怎么样,int与double之间的运算以及浮点类型数据是如何表示的。这里我们来仔细的梳理一下:废话说到这里,开始上干货。原创 2022-10-02 16:13:36 · 1567 阅读 · 1 评论 -
C++之数据类型转换(全)
当我们用C++编写代码时,经常会遇到数据类型的转换,如string,char*,char[],const char*、Qstring以及int,float等各种类型之间的转换。而且有些转换的函数在低版本的C++中是不支持的,所幸这里我们对C++中常用的数据类型转换进行记录。在数据转换中,尤其是字符串转换是最常用的,所以我们以字符串来作为整个数据类型转换的核心。原创 2022-09-12 09:58:40 · 26980 阅读 · 7 评论 -
02_C++实现多线程服务器代码(linux系统)
socket编程,多线程实现,服务器通过TCP与客户端通信且可以与串口终端设备通信,端口号和串口号波特率采用带参执行,服务端可以支持多个客户端和多个串口,makefile文件编写,如果连接客户端过多,则随机踢掉一个,通过简易私有协议实现串口和服务器之间的双向通信等多种功能原创 2022-09-04 15:20:03 · 1723 阅读 · 0 评论 -
C\C++之main函数的形参作用
main函数的形参往往在linux系统中使用的最多,下面介绍一种在网络编程中的使用方法,可以自己设置连接的服务器地址,端口,以及波特率的设置。原创 2022-08-28 10:25:45 · 496 阅读 · 2 评论 -
C++类与对象之静态成员和静态成员函数
C++会区分两种类型的成员函数:静态成员函数和非静态成员函数。这两者之间的一个重大区别是,静态成员函数是没有this指针的,且不接受隐含的this自变量,无法访问自己类的非静态成员。C++的变量存储区除了堆区和栈区之外,还存在静态存储区,用于存放static静态变量,全局变量以及常量,生命周期是从程序开始运行到结束。这里即使不对A::a赋值,也能输出结果,因此这里的初始化,指分配内存,而不是赋值。2、通过类名访问:类名::函数(class::fun)C++面向对象编程中,静态成员也是较为重要的。原创 2022-08-25 13:56:53 · 512 阅读 · 1 评论 -
C++类与对象之构造函数
构造函数的使用方法,调用规则以及使用时机,对C++构造函数的全面剖析。原创 2022-08-23 21:49:52 · 832 阅读 · 4 评论 -
C++进阶之高质量代码编程
在之前已经讲过C++的基础,其实许多编程语言的入门大差不差,无外乎数据类型,数据结构,循环语句,条件语句,其实真正区别的是用途,已经语言的特性,这个才是最为重要的,不过在这之前,一个良好的代码风格是必不可少的,所以这里介绍一篇自己总结的《C++高质量代码》的笔记。......原创 2022-08-14 15:18:36 · 1053 阅读 · 0 评论 -
C++基础入门总结
C++基础,包括数据类型(整形,浮点型,指针,引用等)和数据结构(数组,链表等)原创 2022-08-03 15:56:13 · 235 阅读 · 0 评论