![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
代码框架记录
文章平均质量分 58
无敌的炎龙侠
车到山前必有路,条条大路通罗马。
展开
-
多线程概念
多线程概念并行:同时运行并发:并行代码结构单核:某时刻只能执行某一个任务,是伪并发进程:运行起来的程序线程进程可以包含多个线程主线程在main开始,main结束进程结束其他线程,入口可以是函数,类,lambda表达式进程结束,所有线程必须结束进程vs线程进程之间数据不容易共享不同线程之间很容易共享线程挂掉会影响进程线程可以上锁,其他线程必须等待他结束才能使用这一块内存单进程单线程单进程多线程多进程多线程并发多进程并发:一台设备采集,另外一台设备处理多线程并发:t原创 2021-05-07 11:13:59 · 129 阅读 · 0 评论 -
Cmake编写
Cmake编写cmakelist :每个目录可以放一个cmakelist所有目录可以放一个cmakelistcmake区分指令cmake_minmun_required指定最小的cmake版本,如果版本最小project(test)设置当前项目的名称cmake_build_typedebug调式模式release发布信息relwithdebinfo 类似release,但是会发布调试信息minsizerel 特殊的releasecmake_cxx_flags编原创 2021-05-07 11:12:46 · 417 阅读 · 1 评论 -
namespce使用
1、命名空间的概述在c++中,名称(name)可以是符号常量、变量、函数、结构、枚举、类和对象等等。工程越大,名称互相冲突性的可能性越大。另外使用多个厂商的类库时,也可能导致名称冲突。为了避免,在大规模程序的设计中,以及在程序员使用各种各样的C++库时,这些标识符的命名发生冲突,标准C++引入关键字namespace(命名空间/名字空间/名称空间),可以更好地控制标识符的作用域。2、命名空间的定义//定义一个名字为A的命名空间(变量、函数)namespace A { int a = 100;原创 2021-04-21 16:18:12 · 226 阅读 · 0 评论 -
多线程的几种创建方式
简介自从c++11开始,使用std::thread类创建线程是非常方便的。类thread关联的对象构造后立即执行(当然会有操作系统调试延迟)作为构造函数参数的函数的返回值将被忽略如果函数通过抛出异常终止,则调用std::terminate但函数可通过std::promise或通过修改共享变量(可能需要同步,请参见std::mutex和std::atomic)将其返回值或异常传达给调用方注意以下几点:线程对象是不可复制的,只能移动线程对象要么被join,要么detach,否则可能会导致崩原创 2021-04-21 16:12:44 · 88 阅读 · 0 评论 -
C++ 一篇搞懂多态的实现原理
C++ 一篇搞懂多态的实现原理虚函数和多态01 虚函数在类的定义中,前面有 virtual 关键字的成员函数称为虚函数;virtual 关键字只用在类定义里的函数声明中,写函数体时不用。class Base { virtual int Fun() ; // 虚函数};int Base::Fun() // virtual 字段不用在函数体时定义{ }02 多态的表现形式一「派生类的指针」可以赋给「基类指针」;通过基类指针调用基类和派生类中的同名「虚函数」时:若该原创 2021-04-21 16:10:38 · 103 阅读 · 0 评论 -
C++初步学习
typora的使用黑马程序员讲义:视频基础核心提高数据类型整形整形字节大小取值范围int4字节(-231~231-1)short2字节(-215~215-1)long4字节(-231~231-1)long long8字节(-263~263-1)sizeof关键字sizeof读取变量的字节大小#include <iostream>using namepace std;int main(){原创 2021-04-21 16:09:25 · 403 阅读 · 0 评论 -
C++理解(5)--C++中类的静态成员函数
问题:随时可以获取当前对象的数目。#include <stdio.h>class Test{private: static int cCount;public: Test() { cCount++; } ~Test() { --cCount; } int getCount() { return cCount; }};int Test::cCount =原创 2021-03-01 19:25:29 · 123 阅读 · 0 评论 -
C++理解(4)--C++的二阶构造模式
C++的二阶构造模式首先明白构造函数是什么:类的构造函数用来对象的初始化构造函数与类同名并且没有返回值构造函数的在创建对象时候自动被调用先抛出问题:构造函数执行结果是什么?构造函数中加上return会发生什么?构造函数的执行结束是否意味着对象构造成功?先上代码:#include <stdio.h>class Test{ int mi; int mj;public: Test(int i, int j) { mi原创 2021-02-25 20:43:24 · 114 阅读 · 0 评论 -
C++理解(3)--C++中类的静态成员变量
C++理解(3)–C++中类的静态成员变量问题:统计在程序运行期间某个类的对象的数目保证程序的安全性(不能使用全局变量)随时可以获取当前对象的数目这里有个错误的示范:#include <stdio.h>class Test{private: int mCount;public: Test() : mCount(0) { mCount++; } ~Test() { --mCount;原创 2021-02-23 19:44:05 · 150 阅读 · 1 评论 -
C++理解(2)--c++中 隐藏this指针与成员函数
问题:成员函数与成员变量隶属于具体的对象吗?先解释一下对象是什么?对象是成员函数与成员变量组成的。下面是代码:#include <stdio.h>class Test/类{ int mi;public: int mj;//成员变量 Test(int i);//成员函数 Test(const Test& t); int getMi(); void print();};Test::Test(int i){ m原创 2021-02-22 12:42:07 · 186 阅读 · 0 评论 -
C++理解(1)--c++中的对象的构造顺序与析构顺序
C++理解(1)–c++中的对象的构造顺序与析构顺序问题:当程序中存在多个对象时,如何确定这些对象的析构顺序?一.单个函数创建时构造函数的调用顺序1.调用父类的构造过程2.调用成员变量的构造函数(调用顺序与声明顺序相同)3.调用类自身的构造函数析构函数与对应构造函数的调用顺序相反!多个对象析构时析构顺序与构造顺序想反**注解:**mian函数之前是可以执行代码的。因为mian函数之前,执行器主要做:配置堆栈初始化静态与全局变量初始化全局变量赋值运行全局构造器将mian函数的两个原创 2021-02-21 19:10:57 · 657 阅读 · 0 评论