随笔分类 -  1、boost

摘要:#include <boost/smart_ptr.hpp> #include <boost/enable_shared_from_this.hpp> #include <iostream> class MyClass : public boost::enable_shared_from_this< 阅读全文
posted @ 2021-03-13 16:49 osbreak 阅读(450) 评论(0) 推荐(0)
摘要:一、lock模板类 1、独占锁: boost::unique_lock<T>,其中T可以mutex中的任意一种。 2、共享锁: boost::shared_lock<T>,其中的T只能是shared_mutex类。 二、读写锁 typedef boost::shared_lock<boost::sh 阅读全文
posted @ 2021-03-09 22:00 osbreak 阅读(314) 评论(0) 推荐(0)
摘要:{ "Version": 1, "Metrics": [{ "wingarea": 1341.01, "unit": "FT2" }, { "wingspan": 1350.81, "unit": "Inch" }], "Propulsion": { "Location": { "XEDIC": 2 阅读全文
posted @ 2021-03-07 22:56 osbreak 阅读(286) 评论(0) 推荐(0)
摘要:<?xml version="1.0" encoding="utf-8"?> <localinfo> <player_info> <userInfo account="1990wyb" isLastLogin="0" isSave="0"/> </player_info> <PopupMessage 阅读全文
posted @ 2021-03-07 20:11 osbreak 阅读(168) 评论(0) 推荐(0)
摘要:boost::any 是一个非常灵活的类型安全容器,可以存储任意类型的值,是实现“泛型容器”或“动态类型”的重要工具。 #include <boost/any.hpp> #include <iostream> #include <vector> #include <string> #include 阅读全文
posted @ 2021-03-06 23:59 osbreak 阅读(73) 评论(0) 推荐(0)
摘要:boost的timer类可以计算时间的流逝,可以用来测量程序的运行时间,算法的执行时间等,提供毫秒级别的时间精度,最大的时间间隔是596小时. boost::timer 和 boost::progress_timer 通常只提供 秒级或毫秒级精度,不适合高精度性能分析。 推荐使用 boost::ch 阅读全文
posted @ 2021-03-06 23:44 osbreak 阅读(75) 评论(0) 推荐(0)
摘要:#include <cstdio> #include <iostream> #include <sstream> #include <boost/date_time/gregorian/gregorian.hpp> using namespace std; using namespace boost 阅读全文
posted @ 2021-03-06 23:04 osbreak 阅读(315) 评论(0) 推荐(0)
摘要:#include <boost/algorithm/string.hpp> //转 大/小 写 boost::to_upper(s); std::cout << s << std::endl; boost::to_lower(s); std::cout << s << std::endl; //转 阅读全文
posted @ 2021-03-06 17:03 osbreak 阅读(523) 评论(0) 推荐(0)
摘要:boost::lexical_cast 是 C++ 中最优雅的类型转换工具之一,尤其适合配置解析、CLI 参数处理、日志系统等场景。 // 字符串 转 数值 try { std::string str1 = "123"; int n = boost::lexical_cast<int>(str1); 阅读全文
posted @ 2021-03-06 16:30 osbreak 阅读(141) 评论(0) 推荐(0)
摘要:boost::static_visitor 是 Boost.Variant 库中的一个辅助类,用于定义 访问者(visitor),以便在 boost::variant 类型上执行 静态多态操作。 它允许你安全地对变体(variant)中存储的不同类型进行不同的处理,避免了复杂的 if-else 或类 阅读全文
posted @ 2019-06-24 22:13 osbreak 阅读(630) 评论(0) 推荐(0)
摘要:cinatra 一个高效易用的c++ http框架 1、下载源码 https://github.com/qicosmos/cinatra 2、 准备好boost库 (vs2019 编译boost库 【msvc-14.2】 x64位) 3、 vs2019 配置工程: c++17 、boost路径、库路 阅读全文
posted @ 2019-06-21 13:59 osbreak 阅读(1201) 评论(0) 推荐(0)
摘要:环境: win10 vs2017 v141 1、下载 boost_1_70_0.zip. 2、以管理员方式打开 3、 bootstrap.bat 4、编译64位库 b2.exe stage --toolset=msvc-14.1 address-model=64 --stagedir="D:\App 阅读全文
posted @ 2019-06-21 11:05 osbreak 阅读(4250) 评论(0) 推荐(1)
摘要:// 1. 同步定时器 #include <cstdio> #include <iostream> #include <boost/asio.hpp> #include <boost/date_time/posix_time/posix_time.hpp> int main() { boost::a 阅读全文
posted @ 2018-11-27 22:11 osbreak 阅读(466) 评论(0) 推荐(0)
摘要:#include "stdafx.h" #include <boost/multi_index_container.hpp> #include <boost/multi_index/ordered_index.hpp> #include <boost/multi_index/hashed_index 阅读全文
posted @ 2018-10-21 16:35 osbreak 阅读(1439) 评论(0) 推荐(0)
摘要:下载地址:http://sourceforge.net/projects/boost/files/boost/1.58.0/boost_1_58_0.tar.bz2/download 编译前所需的库 1 sudo apt-get install mpi-default-dev # mpi relat 阅读全文
posted @ 2018-09-27 21:36 osbreak 阅读(5556) 评论(0) 推荐(0)
摘要:asio是boost提供的一个c++异步编程模型库,其核心类io_service,在多线程编程里面提供了任务队列和任务分发功能, 在socket、io编程里主要作为一个事件驱动器(完成端口、select、poll、epoll等)。 调用run成员函数。run函数将阻塞直到所有任务完成 并且没有任何处 阅读全文
posted @ 2018-07-02 14:13 osbreak 阅读(351) 评论(0) 推荐(0)
摘要:thread_specific_ptr代表了一个全局的变量,而在每个线程中都各自new一个线程本地的对象交给它进行管理。 线程之间就不会因为访问同一全局对象而引起资源竞争导致性能下降。 而线程结束时,这个资源会被自动释放。 #include <boost/thread/thread.hpp> #in 阅读全文
posted @ 2018-06-22 17:09 osbreak 阅读(2554) 评论(0) 推荐(0)
摘要:boost中有一些分散的单例实现,能够独立摘出来用的主要有以下四个:尤其以前两个为主。 boost/container/detail/singleton.hpp boost/serialization/singleton.hpp boost/thread/detail/singleton.hpp b 阅读全文
posted @ 2018-06-20 21:57 osbreak 阅读(1509) 评论(0) 推荐(0)
摘要:Boost.Asio是一个跨平台的网络及底层IO的C++编程库,它使用现代C++手法实现了统一的异步调用模型。 头文件: #include <boost/asio.hpp> 名空间: using namespace boost::asio; ASIO库能够使用TCP、UDP、ICMP、串口来发送/接 阅读全文
posted @ 2018-06-20 21:36 osbreak 阅读(1331) 评论(0) 推荐(0)