C++
杀鸡要用屠龙刀
努力成为未来AI消灭程序员的一份子
展开
-
c++宏编写单例模式的3种写法
饿汉:一开始就实例化对象懒汉:调用(需要)才去实例化对象写法一,可用于懒汉和饿汉线程安全singleton.h#ifndef SINGLETON_H#define SINGLETON_H#include <mutex>#define DECLARESINGLETON(class_name) \private: \ static class_name *_instance; \public: \static class_name *instance() \{ \原创 2021-06-08 14:03:30 · 502 阅读 · 0 评论 -
c++项目实战----->qt动态链接库的使用
Window平台:利用qt编写动态链接库:原创 2021-01-14 13:19:47 · 670 阅读 · 0 评论 -
linux Poco::Exception :I/O error: Too many open files 解决方法
1.利用ps -A|grep 找到程序的pid号2.lsof -p pid 即可查看那个tcp占用了太多资源,再对其进行优化处理原创 2020-12-15 16:37:07 · 415 阅读 · 0 评论 -
c++项目实战--->Ubuntu系统设置qt程序守护进程
设置工具:systemctlsystemctl是一个systemd(system daemon,linux下的一种init软件)工具,主要负责控制systemd系统和管理系统服务。作用将程序注册为systemd service进程管理交由系统管理,实现程序的异常退出重启和开机自启动。编写systemctl管理的服务脚本,一般以.service结尾配置文件一般分为3个区块(Unit、Service、Install),每个区块包含若干条键值对。以PowerPlantManagerd.s原创 2020-10-19 17:07:18 · 770 阅读 · 1 评论 -
Ubuntu16.04+QT---poco库的使用之http网络通信
1.poco库的安装和编译见上篇:https://blog.csdn.net/qq_40167046/article/details/1091197632.QT的poco配置.pro文件,添加poco的配置## POCO配置 ### poco的头文件等都在这个目录下,到include一级即可,不需要再下去到 /poco/# 其实不需要加这句,因为该路径是默认添加的INCLUDEPATH += /usr/local/include# 配置1,动态库CONFIG(debug,原创 2020-10-18 15:51:49 · 1258 阅读 · 2 评论 -
Ubuntu16.04--poco和boost库编译和安装
poco法1:如果有版本的需求则不推荐sudo apt-get install libpoco-dev# 也可利用新立德软件管理包安装法2:编译poco源码(推荐)官网下载:https://pocoproject.org/或者:https://download.csdn.net/download/qq_40167046/12939299安装所需的依赖:sudo apt-get install openssl sudo apt-get install libssl-de原创 2020-10-16 17:52:17 · 1207 阅读 · 1 评论 -
c++项目实战---->QT过滤文件并删除多余文件
接上篇c++项目实战---->QT文件日志输出// 控制日志文件数量static void control_filesnum(){ QDir dir(parameter.log_folder_path); if (!dir.exists()) { return; } QStringList filter; filter << "*.log"; dir.setNameFilters(filter); // 设置文件过滤原创 2020-09-17 16:22:51 · 545 阅读 · 1 评论 -
c++项目实战---->QT文件日志输出
1.QCoreApplicationQt库针对不同的应用程序类型,提供了不同的类来表示。比如,QCoreApplication表示Qt控制台程序,QApplication 和 QGuiApplication 表示GUI程序。它们之间的关系为QCoreApplication 继承自最顶层的QObject,QGuiApplication 又继承自QCoreApplication,QApplication又继承自QGuiApplication。int main(int argc, char *argv[])原创 2020-09-17 15:37:42 · 488 阅读 · 1 评论 -
c++删除含有特殊字符的文件名和无特殊字符的文件名的文件
std::string del_path = this->traindata_temp_path + "/" + model_name + "/" + "123.csv";std::string del_command = "rm " + del_train_path;std::system(del_command.c_str());原创 2019-09-06 09:30:21 · 900 阅读 · 0 评论 -
ubuntu+qt下c++最简单的文件夹和文件操作方法
1.创建或者创建一个文件夹 std::string path = "/home/zpf/zpf/floder/"; std::string command; //command = "mkdir -p " + path; //创建文件夹 command = "rm -r " + path; //删除文件夹 system(command.c_str());注意,小心坑:-r和-...原创 2019-08-09 11:33:53 · 1356 阅读 · 0 评论 -
拷贝构造函数new,虽然析构函数delete,用Valgrind检测仍然有内存泄露的解决方法
class MyPoint{public: MyPoint(); MyPoint(const MyPoint &c); ~MyPoint(); MyPoint& operator = (const MyPoint &right);private: CalculationPoint *CalculateInformation ...原创 2019-07-09 20:35:59 · 340 阅读 · 0 评论 -
c++vector初始化,assign,遍历,resize和reverse
方法一:不带参数std::vector<int> lqs1;方法二:带一个参数std::vector<int> lqs2(10); //10个默认值为0方法三:带两个参数std::vector<int> lqs3(10,1); //初始化10个值为1方法四:通过已知的同类型std::vector<int> lqs4(lqs3...转载 2019-07-12 21:54:09 · 1197 阅读 · 0 评论 -
C++从零开始
1. 3天从c过渡到c++,从0到1,推荐b站上小甲鱼的<<c++快速入门>>,看完能大致写一些简单的c++代码2. <<c++Primer>>第五版配合,查询基本语法网站:https://en.cppreference.com/w/ 60天读完<<c++Primer>&...原创 2019-06-11 14:16:52 · 193 阅读 · 0 评论 -
map存放二维数组
法一:存放指针#include <map>#include <string>void map_twowei(const std::vector<std::string> list,const std::vector<std::vector<doble>> &data) { std::map<std::string...原创 2019-06-12 15:22:05 · 4090 阅读 · 0 评论