
C++
文章平均质量分 66
IT菜籽U
当你发现自己的才华撑不起野心时,就请安静下来学习吧
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
CMakeLists.txt
摘要:本系统基于CentOS7.6,x86_64环境下操作;关键词:Linux、VSCode、CMake、C/C++、GCC/GDB适用范围:想从Windows转Linux开发的者想深入了解并掌握GCC编译器语法和规则者想深入了解并掌握GDB调试器命令行调试者想学习使用CMake构建C/C++工程者想学习Linux下使用VSCode进行C/C++开发者第一讲:Linux系统介绍1.1目录结构1.2指令与选项1.3重要指令讲解 目录、文件创建、查看、编辑、修改、删原创 2021-10-07 20:44:29 · 1156 阅读 · 1 评论 -
Visual Studio 2017 双击没反应的简单解决办法
https://jingyan.baidu.com/article/c275f6ba78f7aae33d756707.html转载 2021-09-26 14:16:30 · 3959 阅读 · 0 评论 -
VS2017 编译opencv、opencv-contrib
.opencv官网下载地址1.下载opencv,如图1-3红框内,这个选4.2.0图1图2图32.opencv_contrib-4.2.0,点击如图4-6红框内图4图5图63.CMakeList编译3.1解压缩上面下载的两个压缩包,opencv-4.2.0.zip和opencv-contrib-4.2.0.zip,并在opencv-4.2.0文件中创建build3.2打开CMake (cmake-gui),官网下载路径,选择sm...原创 2021-09-20 20:01:43 · 854 阅读 · 0 评论 -
Windows 7 编译64位boost库
Windows 7 编译64位boost库1. 官网下载boost2. 解压boost到D:\Library\boost_1_64_03. 打开VS2017 x64 本机工具命令提示符,输入 “d:” 回车,再输入 “cd D:\Library\boost_1_64_0”,进入boost目录4. 输入 bootstrap.bat,回车,生成x64版的bjam.exe和b2.exe5. 输入 “b2.exe --build-type=complete --stagedir="...转载 2021-09-18 17:30:22 · 494 阅读 · 0 评论 -
[QT]QRECTF详解
QRECTF详解一、一图流二、成员函数1、void QRectF::adjust(qreal dx1, qreal dy1, qreal dx2, qreal dy2)。左上角和右下角的坐标增加相应的值。例:void Widget::paintEvent(QPaintEvent *event){ auto rect = event->rect(); QPainter painter(this); painter.setRenderHint(QPaint原创 2021-09-10 10:52:28 · 4215 阅读 · 0 评论 -
CentOS7.9安装GitLab(离线)
安装包:gitlab-ce-12.9.9-ce.0.el7.x86_64.rpm(推荐)指令:[root@localhost gitLab]#rpm -ivh gitlab-ce-12.9.9-ce.0.el7.x86_64.rpm提示界面:版本: [root@localhost gitLab]#git --version2.修改git的URL,将external_url 'http://gitlab.example.com'修改为自定义的URL,如下图指令:[root...原创 2021-09-04 17:08:30 · 1030 阅读 · 0 评论 -
[c++] expected unqualified-id before ‘__extension__’
linux下编译复数类型引发的错误:expected unqualified-id before '(' token该类型错误一般由头文件引用顺序的问题引起,默认情况下gcc编译器一般会给出问题出处以及所涉及到的所有的头文件,只需要调整该头文件的其他文件在报错.cpp文件中的引用顺序即可,一般将该文件或者引用该头文件的头文件置于自定义头文件的前面。...原创 2021-06-30 16:57:13 · 1632 阅读 · 0 评论 -
[C++基础]除去所有空格及换行符
void replace_string(std::string &res ){ //删除换行符 int ret= res.find('\r\n'); while (ret != string::npos) { if (ret != string::npos) { res.replace(ret, 4, ""); ret = res.find('\r\n'); } } //删除所有空格 res.erase(...原创 2021-05-12 16:58:02 · 2474 阅读 · 0 评论 -
[C++]VS2013使用gsoap创建WebService步骤
一、环境操作系统:Windows 7gsoap版本:2.8.74C++编辑器/IED开发环境:Visuval Studio 2013二、Gsoap工具简介:Gsoap编译工具提供了一个SOAP/XML关于C/C++语言的实现,从而让C/C++实现基于WebService协议服务应用(客户端或服务端)的工作变得轻松了很多。绝大多数的C++Web工具包提供一组API函数类库来处理特定的SOAP数据结构,这样就使得用户必须改变程序结构来适应相关的类库。与之相反,gSOAP利用编译器技术提.原创 2021-03-27 23:02:30 · 349 阅读 · 0 评论 -
[C++]xml文件读取
一、应用场景 在实际开发中遇到有些固定格式的数据,这些数据仅仅被读取而几乎很少被写入的,因而采用数据库方式存储显得没有必要,并且影响数据的访问效率。所以往往采用本地化的xml文件格式存储方式。二、XML,自定义名称 CarInfo.xml<?xml version="1.0" encoding="gb2312"?><Config> <car_info> <Data car_ip="10.3.6.176" area="GB0...原创 2021-03-24 09:08:54 · 1037 阅读 · 0 评论 -
c++中时间戳与标准时间间的相互转换
源自:https://blog.youkuaiyun.com/wangqing_12345/article/details/520927281,标准时间准换成时间戳int standard_to_stamp(char *str_time){ struct tm stm; int iY, iM, iD, iH, iMin, iS; memset(&stm,0,sizeof(stm)); iY = atoi(str_time);...原创 2021-02-03 17:27:47 · 3136 阅读 · 2 评论 -
CentOS7.6安装gSoap流程
源:链接: https://pan.baidu.com/s/1xmkOg9nE4xLRf15hSrUNnQ 提取码: i4n7我下载的是gsoap_2.8.1 解压文件:unzip -d /usr/ gsoap_2.8.1.zip2. 安装前置软件包 yum install openssl-devel yum install byacc yum installbison yum installbison-devel yum ...原创 2021-01-30 18:08:33 · 443 阅读 · 1 评论 -
Linux g++ Makefile
TARGET:=tcp_serverbuild=releasearch=x86_64CP=cpCPPFLAGS=-Wall -std=c++11INCLUDES=\ -I../\ -I../sdk/nsp/ \ -I../sdk/nsp/icom/ \ -I../sdk/misc/ \ -I../sdk/var/ \ -I../sdk/rapidxml/ \ -I./SRCS+=...原创 2021-01-21 09:22:32 · 429 阅读 · 0 评论 -
CentOS7(7.4)环境下使用JSONCPP一般步骤
1.内核详情:Linux localhost.localdomain 3.10.0-1127.el7.x86_64 #1 SMP Tue Mar 31 23:36:51 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux2.g++(gcc)版本:gcc 版本 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC)3.下载scon和jsoncpp安装包scon:http://prdownloads.sourceforge.NET/scons/原创 2021-01-13 14:35:10 · 1171 阅读 · 0 评论 -
Linux C++ 通过PID文件判断进程是否运行
1.环境:Linux localhost.localdomain 3.10.0-1127.el7.x86_64 x86_64 x86_64 x86_64 GNU/Linux2.文件运行权限:root3.代码#include<stdlib.h>#include<stdio.h>#include<sys/types.h>#include<sys/stat.h>#include<fcntl.h>#include<unistd.原创 2021-01-09 18:16:18 · 3011 阅读 · 0 评论 -
C++ libEvent Http协议(客户端)
#include <errno.h>#include <stdlib.h>#include <string>#include <time.h>#include <event2/event.h>#include <event2/buffer.h>#include <event2/http.h>#include <event2/http_struct.h>#include <event2/ke原创 2021-01-08 14:03:48 · 1153 阅读 · 1 评论 -
C++ 随机生成UUID(Windows&Linux)
//随机生成UUIDstd::string ToolImpls::GetUUID() { static std::random_device rd; static std::uniform_int_distribution<uint64_t> dist(0ULL, 0xFFFFFFFFFFFFFFFFULL); uint64_t ab = dist(rd); uint64_t cd = dist(rd); uint32_t a, b, c, d...原创 2020-12-28 15:15:03 · 3006 阅读 · 0 评论 -
C++日志打印总结
1.基础打印头文件: #include <iostream>输出格式:std::cout<<"日志信息"<<std::endl;2.头文件:stdio.hpost_size:为数据打印信息printf("====line:%d,post len:%d\n", __LINE__, post_size);3.log4.output...原创 2020-12-15 10:00:48 · 1426 阅读 · 0 评论 -
C++:编码转换
1.GBK转UTF-8(解码),这方法包含两部分:DecodeUtf8fromString函数和WString2String函数--windows环境std::string WString2String(std::wstring &in){ int nLen = WideCharToMultiByte(CP_ACP, 0, in.c_str(), -1, NULL, 0, NULL, NULL); if (nLen <= 0) return std::string("")...原创 2020-12-13 10:55:25 · 1232 阅读 · 0 评论 -
public: __thiscall***
当时出现的问题是情况1,注意在面向对象编程中,对象定义时,如果析构函数没有定义的话,也会提示这类错误(这种情况的错误比较隐蔽)链接错误:出现这个2001错误,是因为链接失败,然而链接失败,又是因为以下原因:1.你在头文件中声明了函数,但是cpp文件缺少了函数实现部分。2.忘了将这个.h,.cppAdd to project;3.以上两种情况都没有做,没有将它对应的lib文件添加到Setting-> LINK中致谢:https://blog.youkuaiyun.com/wo...原创 2020-11-06 23:40:16 · 321 阅读 · 0 评论 -
C++知识库
#pragma once/*保证头文件不被重复包含*/#include <sdkddkver.h>/*兼容以前的系统*/#include<stdio.h>#include<tchar.h>//#include "resource.h" //资源文件#include <bitset>/*二进制*///#include <afxwin.h>//#include<Afxwin.h>#include <conio.h>原创 2020-11-03 23:20:09 · 209 阅读 · 0 评论 -
OpenCV340使用操作说明
OpenCV340使用操作说明安装OpenCV340 exe下载地址:官网https://www.opencv.org/releases.html网盘:https://blog.youkuaiyun.com/omodao1/article/details/80276834由于opencv340中的build只有64位的程序包,要想获取32位的需要借助其他工具编译OpenCV3.4.0 +contrib+vs2013+x86版本:https://blog.youkuaiyun.com/hust_b...原创 2020-09-29 10:26:56 · 558 阅读 · 0 评论 -
CentOS底层库升级
为满足C++(Linux)程序正常执行(非docker),需要对CentIOS底层库升级yum groupinstall "Development Tools"yum install glibc-static libstdc++-statictar -xvf gcc-5.4.0.tar.bz2cd gcc-5.4.0./contrib/download_prerequisitsmkdir buildcd build../configure --enable-checking=releas原创 2020-09-16 13:41:33 · 409 阅读 · 0 评论 -
docker load的 repositories: no such file or directory问题
1.原作者内容摘抄如下:使用docker load的时候会出现如下错误:open /var/lib/docker/tmp/docker-import-500852078/repositories: no such file or directory原因是docker load 和docker import 的区别。因为压缩包如果是用docker save打包的,自然可以用docker load,但是如果压缩包是用docker export打包的,那就需要用docker import。命令如下原创 2020-08-05 11:57:10 · 20170 阅读 · 4 评论 -
Ubuntu安装高版本的gcc以及多版本切换
1、apt-get update2、apt-get install -y gcc-7 g++-7update-alternatives /usr/bin/gcc-5 50 --slaveupdate-alternatives /usr/bin/gcc-7 70 --slaveadd-apt-repository ppa:ubuntu-toolchain-r/testgcc -vupdate-alternatives --config gcc...原创 2020-07-10 10:20:05 · 2106 阅读 · 0 评论 -
浅谈C++之回调函数
说起回调函数往往和回调函数指针联系在一起;问题来了我们如何申明回调函数、如何执行回调函数和如何使用回调函数指针?他们之间存在怎样的联系?解答这些问题前先搞懂什么是函调函数?回调函数:程序通过参数把该函数的函数指针传递给了其它函数,在那个函数里面调用这个函数指针就相当于调用这个函数,这样的过程就叫回调,而被调用的函数标准定义:typedefvoid(*SCT_XXX)(LPVOID lp...原创 2020-05-08 16:03:52 · 476 阅读 · 0 评论 -
关于处理一个C++服务端程序频繁挂掉的心路历程
1.项目背景 a.项目需求-可省略或者简要说明 b.组织架构及其运行环境2.问题概述3.分析预处理过程4.用的技术5.学到内容满怀信心+顶不住压力+冷静分析+重回信心=问题解决 ...原创 2020-03-02 09:53:19 · 634 阅读 · 0 评论 -
std::bad_alloc的处理
问题:由于C++程序HTTP服务端需要持续不断地读写入大量的高清类图片。测试图片流总量大于1000张,在大概500张处系统提示这个信息。terminate called after throwing an instance of 'std::cad_alloc' what():std::bad_alloc链接:1.问题分析https://blog.youkuaiyun.com/wuhenle...原创 2020-02-28 10:48:23 · 9561 阅读 · 0 评论 -
Linux(Ubuntu)调试工具--gdb
1.运行程序(非docker)gdb MainDemo2.输入r(run)3.输入bt如上图显示HYClientMain.cpp的91行为奔溃位置。原创 2020-02-28 09:19:33 · 430 阅读 · 0 评论 -
linux C++ setsockopt函数
https://blog.youkuaiyun.com/callinglove/article/details/8631503https://blog.youkuaiyun.com/A493203176/article/details/65438182转载 2020-01-02 09:56:13 · 864 阅读 · 0 评论 -
Esxi虚拟机OVF导出问题总结
1.问题描述:最近搞VMWare-Esxi(企业版服务器虚拟机管理操作系统),通过Esxi导出CentOS镜像OVF文件导出失败,该问题花费N多脑细胞,总结如下。2.问题表象:遇到 disk-1.vmdk失败 - 网络错误如图所示3,问题分析如果虚拟机文件过大(目测200M以上),在直接在平台上导出一般会报网络异常。推测需要对网络进行配置。具体原因还不清楚,感兴趣的小伙伴...原创 2019-11-05 17:31:08 · 23571 阅读 · 5 评论 -
C++的string与char 数组的区别
区别:char *s1:s1是一个指向字符串的指针;char s2[]:s2是一个字符数组;string s3:s3是一个string类的对象.【内存模型】例如:char *s1 = "hello";char s2[] = "hello";内存模型如下+-----++---+---+---+---+---+---+s1: |*======&g...转载 2019-05-25 21:21:17 · 6237 阅读 · 0 评论 -
VS2013编译提示无法运行“rc.exe”错误
VS2013编译C++程序报rc.exe无法执行问题,贴图VS2013编译提示无法运行“rc.exe”错误,网上搜了好多,说是改path变量的,平台改成带xp的哪个,替换rc.exe等一堆问题,都没有解决。之后在帖子说是要在工程文件里面添加下面的即可:具体:XXX.vcxproj添加 <PropertyGroup> <TrackFileAccess...原创 2019-05-13 14:48:08 · 3612 阅读 · 2 评论 -
C++ 将当前系统时间转换成标准格式的时间和时间戳
1:先将系统时间转换成标准格式的时间,再转成时间戳。#include "iostream"#include "time.h"#include "string.h"using namespace std;int main(){ time_t rawtime ; struct tm * timeinfo; char s[100]; time ( &rawtime...转载 2019-05-24 08:52:21 · 6078 阅读 · 0 评论 -
C++ 将时间戳转换成标准时间
#define _CRT_SECURE_NO_WARNINGS 1#include "iostream"#include "time.h"#include "string.h"using namespace std;typedef struct times{ int Year; int Mon; int Day; int Hour; int Min; int Second...转载 2019-05-24 08:45:23 · 4566 阅读 · 0 评论 -
C++ VS2013断点不能命中指定代码问题
1.保证代码已经被编译过;2.一般采用Debug模式,尽量不要用Release原创 2019-09-05 11:37:48 · 349 阅读 · 0 评论 -
error LNK2019: 无法解析的外部符号 __imp__closesocket@4。。。。。
1.问题如下: 2.解决方案:错误 6 error LNK2019: 无法解析的外部符号 __imp__closesocket@4,该符号在函数 "public: int __thiscall CIEC104Master::CloseLink(bool)" (?CloseLink@CIEC104Master@@QAEH_N@Z) 中被引用这个原因是VS缺少ws2_32.lib这个库...原创 2019-01-03 16:34:03 · 8746 阅读 · 1 评论