C++ – 类的构造函数、拷贝构造函数、拷贝赋值、移动构造函数、移动赋值函数的形式与区别
1 C++类 1.1 C++类的构造函数和赋值运算符 一个完整的C++类会有以下几种特殊的函数,主要是构造函数和赋值运算符,其中构造函数包括构造函数、拷贝构造函数、移动构造函数,赋值运算符包括拷贝赋值、移动赋值, 构造函数 :ClassName() 拷贝构造函数:ClassName(const Cl…
- C++
- 2024-02-05
C++ – 从文件和字符串流中逐行读取数据
C++从文本文件中逐行读取文本的方式比较常见,在有些情况下需要从字符串中逐行读取数据,比如说有一个csv文件数据存储在一个std::string中,我们需要逐行解析这个csv文件的内容,这个时候就需要使用到stringstream。 1 从文件中逐行读取文本 #include <iostrea…
- C++
- 2024-01-22
C++ – 使用libhv构建http服务器,实现get请求返回图片
1 基于libhv构建http服务器,实现get请求返回图片 假设获取图片接口为:http://127.0.0.1:8080/image ,通过使用libhv构建一个http服务器,实现访问该接口获取图片。 示例代码为: #include <iostream> #include "ope…
- C++
- 2024-01-16
C++ – 使用libhv构建http服务器,实现get和post接口返回json数据
1 基于libhv构建http服务器 1.1 libhv官方提供的简单示例 libhv提供了简单的构建http服务器的代码示例 #include "hv/HttpServer.h" int main() { HttpService router; router.GET("/ping", [](Htt…
- C++
- 2024-01-16
C++中的中文字符编码
转载自:C++ 中的中文编码 ,如侵联删 中文编码是一个复杂而繁琐的问题,在 C++ 程序设计中尤是如此。近期笔者在工作中对这一点颇有体会,故而在总结一些经验。 1 ASCII码 ASCII码,全称American Standard Code for Information Interchange,…
- C++
- 2024-01-16
C++ – 详解std::promise
1 详解std::promise std::promise提供了在异步线程函数中存储值并在当前线程获取值的机制,为获取某个线程函数中的值提供了便利的方法。 原型 template< class R > class promise; template< class R > cl…
- C++
- 2024-01-15
C++ – 详解std::future
1 详解std::future 1.1 std::future 类模板std::future提供了一种访问异步操作结果的机制,这种异步操作可以是std::promise、std::packaged、std::async。 std::future这个名字起得就很有意思,字面上future就是未来的意思…
- C++
- 2024-01-12
C++ – 详解std::async
1 详解std::async 1.1 std::async 作用 std::async可以异步在一个独立线程中运行线程函数F,并且返回一个存储线程函数F运行结果的std::future,简而言之就是C++提供的高级异步接口。 函数原型 template< class Function, cla…
- C++
- 2024-01-12
C++ – 实现一个小但美的线程池
1 线程池 1.1 线程池需要实现的功能 线程池需要支持以下几个基本功能: 核心线程数(core_threads):线程池中拥有的最少线程个数,初始化时就会创建好的线程,常驻于线程池 最大线程个数(max_threads):线程池中拥有的最大线程个数,max_threads>=core_thread…
- C++
- 2024-01-11
C++ – 数据库连接和操作第三方库整理
1 soci github:https://github.com/SOCI/soci sourceforge:https://soci.sourceforge.net/ SOCI是一个C++数据库访问第三方库,目前支持以下数据库: DB2 Firebird MySQL ODBC (generic b…
- C++
- 2023-12-12
C++ – 对std::vector存储的结构体按照结构体内某个成员进行升序排序和降序排列
1 C++对stdvector内存储的结构体按照结构体内某个成员进行升序排序和降序排列 假设有一个Person结构体 struct Person { std::string name; int age; int score; Person(const std::string& name_in…
- C++
- 2023-12-01
C++ – 总结C++的可调用类型Callable
转载自:https://www.chuxin911.com/C++_callable_objects_summary_20211120/ ,如侵联删。 C++中有很多Callable类型,本文将介绍Callable 的基础概念, 典型的 Callable 类型,例如函数对象(狭义),函数指针,lam…
- C++
- 2023-11-03