C/C++
CaptainSG
这个作者很懒,什么都没留下…
展开
-
C++:多线程
C++:多线程 验证对比其他多线程实现方法的效率问题1. 什么是多线程以及为什么使用多线程不再啰嗦2. 多线程实现方法2.1 通过thread类来实现从C++ 11开始,提供了thread来实现多线程,使用简单方便。没有和其他实现thread的方法进行对比。后续可以考虑测试一下#include <thread>std::thread t1(func, para1, para2, ... );t1.join();2.1.1 类外函数使用类内函数创建线程类外多线程调用原创 2021-06-29 16:01:48 · 402 阅读 · 0 评论 -
C++: 有名管道(FIFO)通信bug
这里给出一个写的比较清晰的管道通信的文章:https://www.cnblogs.com/boyxiao/archive/2011/01/02/1924188.html项目场景:场景:Windows下,进程间使用FIFO通信,用于传输视频帧。问题描述:1. 客户端第一次在read(即createFile)那里会阻塞,客户端第二次运行的时候才会读取出信息;2. 在传输过程中会出现闪屏,画面和黑屏交替出现; 原因分析:1. 搜索服务端的管道名,发现代码中实例了两个相同名字的管道;2原创 2021-06-24 14:50:52 · 391 阅读 · 0 评论 -
C++:{}的使用
今天在对fastrt代码进行阅读时,遇到类的实例化时后面没有传统的(),而是直接使用{} ,有时里边有参数。搜索{}的使用搜到这篇文章,讲述了{}的使用参考文章链接:http://www.arthurcode.com/2019/09/16/c%E7%9A%84%E5%92%8C/()用来表示函数调用,包括普通函数和构建函数,以及可以给内建类型初始化int *p = new int[1000];int *p = new int[1000](); // 内建类型圆括号初始化是语法,是标准int *p原创 2021-03-16 08:43:47 · 2342 阅读 · 0 评论 -
C++:全局变量-多个文件共享的全局变量
在项目中有时会用到跨文件的全局变量,这次在实现鼠标事件时,用到了全局变量,在此记录、总结当前所学习到的内容。先附上参考链接:链接1头文件中不要定义变量: 如果你的头文件被多次引用,那么一个变量会被定义多次。**头文件中可以对变量进行声明,使用 extern **变量的定义和声明声明:是告诉编译器我要用个什么类型的变量,并给它起个名字,并不为它分配内存;定义:负责创建与关键字相关联的实体,即编译器会为该变量分配内存,可以赋值;声明可以有多次,但是定义只有一次;头文件中原创 2021-02-05 14:02:51 · 1095 阅读 · 0 评论 -
关于C++中vector和deque的使用效率测试记录
在进行多目标跟踪显示轨迹时,需要将固定长度的历史轨迹存储并画线显示;因为固定长度,所以需要对数据的头部和尾部都进行操作。当前考虑的存储方式有vector和deque。vector的优势是对中间的操作速度快,deque优势是对两端的操作速度快(百度搜索结果),为综合考虑索引、赋值、删除等操作,现在做以下测试。分别是:使用push_back()赋值1000000次;赋值完成之后进行遍历;删除头部元素速度测试;测试代码如下:#include<deque>#include<vect原创 2020-12-28 16:48:32 · 1961 阅读 · 0 评论 -
tensorflow1.13 + gpu + C++环境编译配置
参考地址编译过程中出现如下错误:error: could not find git for clone of zlib错误原因/解决方法:1. 未安装git或者未将git添加到环境变量中2. 网络不好,需要梯子原创 2020-11-27 08:34:01 · 301 阅读 · 0 评论 -
VS中链接库以及动态库文件配置的问题
C++ 链接库以及动态库相关报错解决环境:VS2015 + c++11 + opencv3.4.3GPU项目场景:使用opencv3.4.3GPU for C++实现多目标跟踪问题描述1:在进行编译时,提示如下:1>main.obj : error LNK2019: 无法解析的外部符号 "void __cdecl cv::rectangle(class cv::Mat &,class cv::Rect_<int>,class cv::Scalar_<dou原创 2020-11-10 09:35:15 · 1892 阅读 · 0 评论