C++小工具汇总
主要收录一些常用的C++小工具,为工作便利和高效工作。
小帅之狗腿子
一个每天幻想一夜暴富的打工人,天很大,人是多么的渺小;希望每个人都能破后而立,找到自己的一片天地。
展开
-
20220920:pip安装包加速利用清华源
加速安装原创 2022-09-20 16:49:41 · 392 阅读 · 0 评论 -
20220418:vs2015安装详细并正确的教程win10
教程原创 2022-04-18 13:38:45 · 409 阅读 · 0 评论 -
20220307:使用条件变量下的线程安全队列
queue.cpp原创 2022-03-07 14:19:22 · 97 阅读 · 0 评论 -
20220218:智能指针知识点
std::shared_ptr大概总结有以下几点:(1) 智能指针主要的用途就是方便资源的管理,自动释放没有指针引用的资源。(2) 使用引用计数来标识是否有多余指针指向该资源。(注意,shart_ptr本身指针会占1个引用)(3) 在赋值操作中, 原来资源的引用计数会减一,新指向的资源引用计数会加一。 std::shared_ptr<Test> p1(new Test); std::shared_ptr<Test> p2(new Test);.原创 2022-02-18 18:05:24 · 132 阅读 · 0 评论 -
20220114:C++写入并追加内容到txt中
fstream f; f.open("data.txt", ios::out | ios::app); for (int cao = 0; cao < channels * height * width; cao++) { f << array[cao] << " "; } f << endl; f.close();原创 2022-02-14 18:31:00 · 1525 阅读 · 0 评论 -
20220210:C++实现轻量令牌桶算法
1.RateLimiter.h#ifndef _RATE_LIMITER_H_#define _RATE_LIMITER_H_#include <mutex>#define RETRY_IMEDIATELY_TIMES 30class RateLimiter {public: RateLimiter(int qps); void pass();private: //互斥锁 std::mutex mtx; //获得当前时间, 单原创 2022-02-10 16:29:14 · 922 阅读 · 1 评论 -
20220208:VScode配置launch.json和task.json文件
launch.json文件:{ // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configu原创 2022-02-08 18:29:06 · 2686 阅读 · 0 评论 -
20220128:各种互斥锁详解
一、分两种锁,一种STL里面的《mutex》和系统锁《pthread.h》一:二:《thread.h》pthread_mutex_init(pthread_mutex_t *mutex, const pthread_mutexattr_t *attr);// 初始化锁变量mutex。// attr为锁属性,NULL值为默认属性。pthread_mutex_lock(pthread_mutex_t *mutex);// 加锁(阻塞操作)// 当锁已经在使用,挂起等待pthread原创 2022-01-28 16:42:34 · 234 阅读 · 0 评论 -
20220122:获取时间戳代码C++
// 需要开启c++11支持,g++ test.cpp -std=c++11 -o test// 这里默认是东八区北京时间格式#include <iostream>#include <chrono>#include <stdio.h>#include <time.h>using namespace std;time_t getTimeStamp(){ std::chrono::time_point<std::chrono::sys..原创 2022-01-22 15:41:11 · 258 阅读 · 0 评论 -
Docker升级版本
# 关闭dockersudo systemctl stop docker# 卸载旧版本:sudo apt-get purge docker-ce# 安装新版本sudo apt updatesudo apt-get -y install apt-transport-https ca-certificates curl software-properties-commoncurl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg.原创 2022-01-21 10:36:29 · 923 阅读 · 0 评论 -
20220113:查看端口状态
参考sudo watch netstat -tlpn原创 2022-01-13 14:38:08 · 152 阅读 · 0 评论 -
20211213:ubuntu常用指令
1.软连接指令2.打包文件指令:sudo tar -cvf XXX.tar.gz XXX原创 2021-12-13 17:49:34 · 756 阅读 · 0 评论 -
20220107:线程锁详解
#include <pthread.h>1.定义变量:pthread_mutex_t mutex_lock;2.初始化锁变量:pthread_mutex_init(&(mutex_lock), NULL);3.使用加锁变量: pthread_mutex_lock(&(mutex_lock));4.使用解锁变量: pthread_mutex_unlock(&(mutex_lock));4.销毁锁变量: pthread_mutex_d...原创 2022-01-07 10:27:45 · 444 阅读 · 0 评论 -
20211229:利用ncnn前向推理yolov5模型,带偏移
// Tencent is pleased to support the open source community by making ncnn available.//// Copyright (C) 2020 THL A29 Limited, a Tencent company. All rights reserved.//// Licensed under the BSD 3-Clause License (the "License"); you may not use this file.原创 2021-12-29 11:06:03 · 922 阅读 · 0 评论 -
20211224:opencv绘制圆、椭圆、矩形等代码
绘制矩形和圆等代码原创 2021-12-24 16:07:27 · 1900 阅读 · 0 评论 -
20211221:Tensorrt部署解析模型uff模型
void createngine() //生成 engine{ //创建builder,第一步创建build IBuilder* builder = createInferBuilder(gLogger); builder->setMaxBatchSize(16); //设置最大batchsize //创建network,第二步创建网络 INetworkDefinition* network = builder->createNetworkV.原创 2021-12-21 11:51:17 · 941 阅读 · 0 评论 -
20211221:conda常用指令
1.安装Anaconda。打开命令行输入conda -V检验是否安装及当前conda的版本。2.conda常用的命令1)查看安装了哪些包conda list2)查看当前存在哪些虚拟环境conda env list 3)检查更新当前condaconda update conda3.Python创建虚拟环境conda create -n your_env_name python=x.xanaconda命令创建python版本为x.x,名字为your_env_name的虚拟环境。y原创 2021-12-21 10:44:09 · 96 阅读 · 0 评论 -
20211113:解析cjson文件脚本
cjson头文件和源文件:https://download.csdn.net/download/m0_37576376/41173070解析csjon文件内容举例:用法一: cJSON *root = cJSON_CreateObject(); cJSON_AddStringToObject(root, "cmd", "result"); cJSON_AddNumberToObject(root, "status", 0); cJSON_AddStringToObject(r原创 2021-11-13 11:23:44 · 415 阅读 · 0 评论 -
20211109:docker批量处理指令
## **docker指令:**杀死所有正在运行的容器docker kill $(docker ps -a -q)删除所有已经停止的容器docker rm $(docker ps -a -q)删除所有未打 dangling 标签的镜像docker rmi $(docker images -q -f dangling=true)删除所有镜像docker rmi $(docker images -q)强制删除镜像名称中包含“doss-api”的镜像docker rmi -.原创 2021-11-09 11:25:17 · 633 阅读 · 0 评论 -
20211105: Cmakelist常用代码;
ubuntu编译时常用的指令汇总:cmake_minimum_required(VERSION 3.0) //cmake版本PROJECT(test) //工程名字//判断是否支持C++11if(COMPILER_SUPPORTS_CXX11) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -pthread -lglog -fPIC")elseif(COMPILER_SUPPORTS_CXX0X) set(CMAKE_CXX_原创 2021-11-06 16:10:37 · 136 阅读 · 0 评论 -
知识:ubuntu硬盘挂载详细步骤:
1.先查看一下当前系统中所能找寻到的硬盘信息:fdisk -lu// 操作系统安装到这里的/dev/sda1 * 2048 250068991 250066944 119.2G 8e Linux LVM// 另一块想要挂载的硬盘/dev/sdb1 2048 976773167 976771120 465.8G 83 Linux2.在根目录下创建一个空目录, 准备把上面的硬盘挂载到这个创建的目录上去:cd /mkdir disk3.通过修改过文件 ‘/etc/fs原创 2021-11-04 09:40:28 · 1995 阅读 · 0 评论 -
20211013:读取文件内容并解析
功能描述:传入文件指针,读取文件或者字符串指定关键内容并赋值给变量:#define PARSESTR_START \ char para_value[256]; \ const char * str_find; #define PARSESTR_UINT8(pcBuffer, name, value) \ str_find = strstr( pcBuffer, (name) ); \ if(str_find) \{ \ str_find += strlen( (name) ); \原创 2021-10-31 09:34:27 · 86 阅读 · 0 评论 -
功能:修改环境变量代码;ubuntu
1.给/.bashrc添加库环境变量,如果添加文件路径为:PATH1. vi ~/.bashrc2. export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/lib3. source ~/.bashrc原创 2021-10-27 15:45:38 · 94 阅读 · 0 评论 -
C++把图片从BGR转到RGB
//fcount图片的个数for (int b = 0; b < fcount; b++) { cv::Mat img = images[b]; if (img.empty()) continue; //resize()缩放图片 cv::Mat pr_img = preprocess_img(img); // letterbox BGR to RGB int i = 0; //BGR-RGB for (int row = 0; row <原创 2021-10-24 17:48:06 · 5360 阅读 · 0 评论 -
常用代码小工具
void getimages(char* pData, int size, ){ char *buffer; buffer = new char[size]; void *achar = const_cast<void *>(pData); const char *tempData = static_cast<const char *>(achar ); memcpy(buffer, tempData, size); vector<char> vdata(&原创 2021-10-19 13:46:22 · 263 阅读 · 0 评论 -
解析json文件,详细介绍。
解析json文件,详细介绍转载 2021-09-26 17:52:10 · 81 阅读 · 0 评论 -
2.C++判断文件是否存在代码
###Au:cao###Fun:判断文件是否存在。bool isFileExists_ifstream(string& name) { ifstream f(name.c_str()); return f.good();}原创 2021-07-26 09:53:26 · 206 阅读 · 0 评论 -
Linux 解析文件夹和文件C++代码和获取图片名字代码
***#Linux 解析文件夹和文件C++代码***:一、解析文件夹代码:void GetFileNames(string path, vector<string>& filenames){ DIR *pDir; struct dirent* ptr; if (!(pDir = opendir(path.c_str()))) { cout << "Folder doesn't Exist!" << endl; return; } whil原创 2021-07-09 16:25:36 · 270 阅读 · 0 评论