Boost是一系列旨在用于C ++的高质量库。 Boost是免费的,通常被认为是“第二标准库”。
致命错误LNK1104:无法打开文件“libboost_log-vc141-mt-gd-1_64.lib”
我正在编写一个利用 Boost 日志记录功能的程序,因此,当尝试构建该程序时,在生成代码时出现以下错误(在 Visual Studio 2017 上)...
使用 Visual Studio 将 Boost.JSON 构建为仅标头是否存在一些错误?
我使用的是 Visual Studio 2022 v17.10.0 和 Boost 1.84.0。 Boost.JSON 文档说明如下: 仅用作标题;也就是说,消除链接的要求 编程为静态或
我试图创建一个双向树状结构,所以我最终得到了以下结构: 模板 结构节点 { T值; std::向量<...
我有一个返回 boost::asio::awaitable 的函数,它接受一个大消息对象作为参数,将序列化字符串写入套接字。最近我读到协程函数将
由于其限制,我需要在 boost (版本 1.54)中用 \K 替换后视表达式,但它不起作用。 我该怎么做或者有什么问题? 有没有其他方法可以转换...
std::unordered_map 和 boost::unordered_map 为桶预留了多少空间,为什么?
当您将元素插入 unordered_map 并且新元素数量大于 max_load_factor()*bucket_count() 时,容器会增长(桶数增长)并发生重新哈希。 我做了一个...
我有一个基于boost::asio和beast的程序,具有协程支持。 该程序通过 Beast Websocket 连接到远程服务器,通过该服务器发送请求,这些请求由其
当我使用 C++11 支持(使用 -std=c++11 标志)编译代码并使用非仅标头的 Boost 库时,我需要使用 -std=c+ 编译 Boost +11。这是因为 Boost 有一些
在运行 Big Sur 的 M1 Macbook Pro 上安装 Exempi 2.5.2 时出错
我正在尝试在 PyCharm IDE for python 中安装 Exempi 2.5.2,以便从 Photoshop psd 文件读取元数据。 我的代码是: 导入PIL 从 libxmp.utils 导入 file_to_dict 从 libxmp 导入 con...
Visual studio 10 无法构建 boost 正则表达式(1.47)的测试示例(32 位):链接错误 1104
Boost 提供了一个测试示例(链接到 boost_regex): // 测试.cpp #包括 #包括 #包括 int main() { std::字符串行; 增强::...
使用 future 向量时“进程已完成,退出代码 -1073740791 (0xC0000409)”
背景 作为 binance-websocket api 和 std::future 使用的新手。我编写了一个程序来测试本地主机和币安服务器之间的时间差,并获取网络延迟。 我推我的...
我正在尝试在 Windows PowerShell 上为 CI 系统下载并执行安装程序(Boost 1.74): 我正在使用 Invoke-WebRequest,然后只需执行该程序即可。 然而它告诉我...
任何更好的方法来改进代码以保持 aiso::async_send 使用的底层内存块有效
我曾经写过下面的代码片段来异步发送tcp数据。 无效对话::do_write(std::string str) { 自动对话指针(shared_from_this()); m_socket.async_send(asio::buff...
我有一个用C++编写的iOS静态框架,下面的代码使用boost mmaped_file进行一些操作。 当 open 失败时,boost 会抛出异常。在我的测试中效果很好
如何仅从单个 Chocolatey 软件包安装 Boost 64 位?
目前,我正在使用 Chocolatey 安装 Boost, choco 安装-y boost-msvc-14.2 --版本 1.74.0 这将安装该库的 32 位和 64 位版本。 我相信我不需要 32 位 v...
使用 Conan 2.0 构建 Boost 使用 MSVC 失败
我正在使用以下设置: 视觉工作室: Microsoft Visual Studio Professional 2022(64 位)- 当前 版本17.10.2 柯南: 柯南2.4.1版 这是我的柯南简介: [设置] 拱=x...
make_parallel_group:它可以与线程池“post”一起使用吗?
我想要一个函数,将输入范围中的元素并行应用到处理程序。一个可能的实现是: 模板 无效
std::to_string、boost::to_string 和 boost::lexical_cast 有什么区别<std::string>?
boost::to_string(在 boost/exception/to_string.hpp 中找到)的用途是什么?它与 boost::lexical_cast 和 std::to_string 有什么不同?
错误:使用 Boost 的 iterator_facade 时,“std::iterator_traits”中没有名为“value_type”的类型
我正在使用 Boost 1.84 和 C++17,并且创建了一个继承自 boost::iterator_facade 的 polymorphic_iterator 类。这是我的课程的简化版本: 命名空间迭代器 { 模板<
boost.graph:在过滤图上使用 kruskal 算法无法编译
我正在使用boost graph,我正在尝试在过滤图上运行kruskal_minimum_spanning_tree算法。遗憾的是它无法编译。 这是显示问题的示例: #包括 我正在使用 boost graph,并且尝试在过滤图上运行 kruskal_minimum_spanning_tree 算法。遗憾的是它无法编译。 这是一个显示问题的示例: #include <boost/graph/adjacency_list.hpp> #include "boost/graph/graph_utility.hpp" #include <boost/graph/filtered_graph.hpp> #include <boost/property_map/function_property_map.hpp> #include <boost/graph/kruskal_min_spanning_tree.hpp> using Graph = boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS>; using Vertex = boost::graph_traits<Graph>::vertex_descriptor; using Edge = boost::graph_traits<Graph>::edge_descriptor; int main() { Graph G; // create a complete graph with 4 nodes. for (int i = 0; i < 5 ; ++i) { for (int j = i+1; j< 5; ++j) boost::add_edge(i, j, G); } boost::print_graph(G); /* 0 <--> 1 2 3 4 1 <--> 0 2 3 4 2 <--> 0 1 3 4 3 <--> 0 1 2 4 4 <--> 0 1 2 3 */ struct Filter { bool operator()(Vertex const & v) const { if (v != 0 && v != 2) return true; return false; } }; boost::filtered_graph G_f(G, boost::keep_all(), Filter()); boost::print_graph(G_f); /* 1 <--> 3 4 3 <--> 1 4 4 <--> 1 3 */ auto wmap = boost::make_function_property_map<Edge, double>([](Edge const & e){ return 1.0; }); std::vector<Edge> mst; // Works: kruskal_minimum_spanning_tree(G, std::back_inserter(mst), boost::weight_map(wmap)); // Does not compile: kruskal_minimum_spanning_tree(G_f, std::back_inserter(mst), boost::weight_map(wmap)); double result = 0; for (auto const & e : mst) result += wmap[e]; std::cout << result << "\n"; // prints 4 } 我可以将 kruskals 算法应用于原始图,并且效果很好。 但是当我尝试在过滤后的图表上运行它时,我收到以下编译错误: error C2039: 'type': is not a member of 'boost::vertex_property_type<Graph>' error C2039: [ error C2039: with error C2039: Graph=boost::filtered_graph<Graph,boost::keep_all,main::Filter> error C2039: ] error C3203: 'type': unspecialized class template can't be used as a template argument for template parameter 'Property', expected a real type 我做错了什么? 我认为问题在于,为了运行 Kruskal 算法,你的图应该有边权重,但你的示例中并非如此: using Graph = boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS>; using Vertex = boost::graph_traits<Graph>::vertex_descriptor; using Edge = boost::graph_traits<Graph>::edge_descriptor; 应该是这样的: using namespace boost; typedef adjacency_list< vecS, vecS, undirectedS, no_property, property< edge_weight_t, int > > Graph; typedef graph_traits< Graph >::edge_descriptor Edge; typedef std::pair< int, int > E; 请查看官方文档中的完整示例: https://www.boost.org/doc/libs/1_85_0/libs/graph/example/kruskal-example.cpp