草庐IT

BOOST_PP_SEQ_FOLD_LEFT

全部标签

c++ - Boost 1.66.0 : could not find boost libraries :boost_system, boost_filesystem、boost_thread、boost_date_time

我的配置是:操作系统:Windows10x64boost:1.66.0CMake:3.10VisualStudio:2017我正在以这种方式编译boost:bootstrap.\b2--build-dir=buildtoolset=msvcaddress-model=64--build-type=completestage运行CMake时出现此错误:couldnotfindboostlibraries:boost_systemboost_filesystemboost_threadboost_localeboost_date_time我搜索这些库,它们位于stage文件夹中。我尝试了B

c++ - boost directory_iterator是否在Windows上按字母顺序访问文件和文件夹

我有一个文件夹fold,其中包含子文件夹sub1、sub2...subX,以及独特的里面的文件。假设我需要找到文件X的第一次出现。我所需要的只是获得一个按顺序通过subX的fold迭代器,或者获得一个文件夹列表并自己对其进行排序。我运行了几次,我注意到迭代器确实是按字母顺序排列的,但是,我在文档中找不到它的具体说明,所以这可能是巧合。但是我看到了:TheLinuxlistingisn'tsorted.That'sbecausetheorderingofdirectoryiterationisunspecified.Orderingdependsontheunderlyingoperat

c++ - cmake 找不到 boost 库,因为它查找了错误的文件名

我根据文档在Windows(8.1)机器上构建了boost(1.56)库,包括共享库和静态库。它们都以以下文件名格式出现在BOOST_ROOT/stage/lib目录中:boost_thread-vc120-mt-1_56.dllboost_thread-vc120-mt-1_56.libboost_thread-vc120-mt-gd-1_56.dllboost_thread-vc120-mt-gd-1_56.lib(这只是线程库,所有其他库也使用相同的格式)当我运行cmake时,它​​会提示无法找到boost库。使用-DBoost_DEBUG=ON运行它显示它查找不同的文件名:li

c++ - 我的程序找不到boost库

我尝试编写作为Boost测试库示例的代码:#includeBOOST_AUTO_TEST_CASE(test){BOOST_CHECK(true);}我构建了源码,得到了执行文件test.exe。我尝试执行该文件,但收到一条错误消息。Theprogramcan'tstartbecauseboost_unit_test_framework-vc80-mt-1_44.dllismissingfromyourcomputer.Tryreinstallingtheprogramtofixthisproblem.但是,我已经在我的boost库目录中准备好该文件。这个案例有什么问题?背景:对于我的

c++ - Code::Blocks 和 Boost Asio。它只是行不通

我无法让Boost.Asio在Code::Blocks中编译。我安装并编译了BoostC++库,并运行了给定的测试示例。现在我正在尝试让Boost.Asio运行。这是编译器调用:mingw32-g++.exe-L"C:\ProgramFiles(x86)\boost\boost_1_49_0"-obin\Debug\server.exeobj\Debug\server.oD:\CodeBlocksIDE\CodeBlocks\lib\libboost_filesystem-mgw44-mt-1_49.aD:\CodeBlocksIDE\CodeBlocks\lib\libboost_s

c++ - boost::regex 库中的内存泄漏

我不太喜欢Boost库。我需要它来匹配我在VS2008中编译的遗留C++/MFC项目中的正则表达式。这是一个简短的代码片段://NeedUnicodesupportCStringss;boost::tregexr(L"(.*?)");boost::tmatchwhat;CStringchat_input(L"Hello");if(boost::regex_match(chat_input,what,r))//Memoryleakonthisline{//extract$1asaCString:ss=L"Match";//CString(what[1].first,what.length

c++ - boost 文件系统错误(temp_directory_path 返回 <Bad Ptr>)

我正在尝试使用Boost获取当前的临时文件夹:boost::system::error_codeerror;autotmp_path=boost::filesystem::temp_directory_path(error);if(boost::system::errc::success!=error.value()){std::cout在visualstudio2013调试session期间调查tmp_path的值时,tmp_path的值似乎不正确-VS显示{m_pathname=}.以下代码也失败,出现异常“stringtoolong”,这可能与问题有关:std::stringtm

c++ - Boost::filesystem::is_empty() 为符号链接(symbolic link)返回 false

直到一周前,我一直在我的项目中使用Boost1.46.1。将所有内容升级到Boost1.55.0后,我注意到某些功能无法像以前那样工作。我的软件加载通过SymLinks放置的配置文件。我正在使用Microsoftmklink做这个。我今天发现虽然1.46.1版中的boost::filesystem::is_empty()为我的链接返回false,但它现在返回true在1.55.0中。不幸的是,我无法更改使用该代码的组件。结果是我的配置文件不再加载。有没有办法以Boost能够识别的方式创建链接?如果我可以访问代码:我需要如何更改它才能再次运行?更新:回复评论的更多信息:SymLink有效

c++ boost asio 异步函数不能在 dll 中工作

我有这个基于教程的简单的boostasio代码,它在从exe中调用时工作正常,但在使用LoadLibrary从dll中运行时崩溃。它在提升代码而不是我的代码中崩溃。90%的时间它会在其线程互斥函数内部崩溃。与exe相比,在dll中执行代码时是否有任何限制?这是我的代码:Connection::Connection(boost::asio::io_service&ioservice):m_Socket(ioservice),m_Resolver(ioservice){}voidConnection::ConnectTo(){boost::asio::ip::tcp::resolver::

windows - 使用 boost::filesystem::path 作为 std::map 中的键

所以std::map想要对键类型进行排序,但我遇到了问题:"a/b""a/b"如何规范化路径以创建排序?这可能吗?我尝试在自定义比较运算符中使用path::generic_string(),但没有成功。fs::equivalent()也无济于事,因为实现平等对于std::map来说还不够,它需要一个排序。这也是为什么这个问题不是HowdoI"normalize"apathnameusingboost::filesystem?的重复问题的原因。.上下文:仅限Windows,Boost1.49,文件系统3。 最佳答案 要使路径具有可比性