草庐IT

ZN5boost

全部标签

c++ - Boost::MPL 的实际使用示例?

您能否分享Boost::MPL的任何真实示例?用法(lambdas除外),只是为了让我更好地了解它的用途和实际使用领域?MPL文档教程有一个dimensionalanalysis示例,但可能因为它是一个学术示例,它并没有让我感觉到Boost::MPL以及何时可以有效使用。 最佳答案 我使用Boost.Mpl来生成类似变体的类。例如,给定一个MPL类型列表,如下所示:typedefboost::mpl::settype_set;然后我使用boost::mpl::fold构建一个从彼此派生的类链,每个类都添加类型集中其中一种类型的std

c++ - Boost::MPL 的实际使用示例?

您能否分享Boost::MPL的任何真实示例?用法(lambdas除外),只是为了让我更好地了解它的用途和实际使用领域?MPL文档教程有一个dimensionalanalysis示例,但可能因为它是一个学术示例,它并没有让我感觉到Boost::MPL以及何时可以有效使用。 最佳答案 我使用Boost.Mpl来生成类似变体的类。例如,给定一个MPL类型列表,如下所示:typedefboost::mpl::settype_set;然后我使用boost::mpl::fold构建一个从彼此派生的类链,每个类都添加类型集中其中一种类型的std

c++ - boost::filesystem 获取相对路径

boost::filesystem库的哪些方法可以帮助我获取相对于另一个路径的路径?我有一个路径/home/user1/Downloads/Books和一个路径/home/user1/。现在我想得到一个路径Downloads/Books. 最佳答案 在boost的新版本中(从1.60开始),您可以使用boost::filesystem::relative。(Seethedocumentationhere.)#include#includenamespacefs=boost::filesystem;intmain(){fs::path

c++ - boost::filesystem 获取相对路径

boost::filesystem库的哪些方法可以帮助我获取相对于另一个路径的路径?我有一个路径/home/user1/Downloads/Books和一个路径/home/user1/。现在我想得到一个路径Downloads/Books. 最佳答案 在boost的新版本中(从1.60开始),您可以使用boost::filesystem::relative。(Seethedocumentationhere.)#include#includenamespacefs=boost::filesystem;intmain(){fs::path

c++ - Boost::multi_array 性能问题

我正在尝试使用以下测试程序将boost::multi_array的性能与本地动态分配的数组进行比较:#include#define_SCL_SECURE_NO_WARNINGS#defineBOOST_DISABLE_ASSERTS#includeintmain(intargc,char*argv[]){constintX_SIZE=200;constintY_SIZE=200;constintITERATIONS=500;unsignedintstartTime=0;unsignedintendTime=0;//Createtheboostarraytypedefboost::mul

c++ - Boost::multi_array 性能问题

我正在尝试使用以下测试程序将boost::multi_array的性能与本地动态分配的数组进行比较:#include#define_SCL_SECURE_NO_WARNINGS#defineBOOST_DISABLE_ASSERTS#includeintmain(intargc,char*argv[]){constintX_SIZE=200;constintY_SIZE=200;constintITERATIONS=500;unsignedintstartTime=0;unsignedintendTime=0;//Createtheboostarraytypedefboost::mul

c++ - 使用 MSVC 11 (VS 2012) 进行 Boost 编译

如何使用1.48.0构建Boost(我尝试了VisualStudioC++11版本)?bootstrap.bat找不到工具集vc11。我将工具集vc11添加到F:\Programming\boost_1_48_0\tools\build\v2\engine\build.bat但收到一条消息:ERROR:CannotdeterminethelocationoftheVSCommonToolsfolder.编辑:Ferruccioanswer也适用于VS2012Express和Boost1.51.0。 最佳答案 这个答案非常适合:VS2

c++ - 使用 MSVC 11 (VS 2012) 进行 Boost 编译

如何使用1.48.0构建Boost(我尝试了VisualStudioC++11版本)?bootstrap.bat找不到工具集vc11。我将工具集vc11添加到F:\Programming\boost_1_48_0\tools\build\v2\engine\build.bat但收到一条消息:ERROR:CannotdeterminethelocationoftheVSCommonToolsfolder.编辑:Ferruccioanswer也适用于VS2012Express和Boost1.51.0。 最佳答案 这个答案非常适合:VS2

c++ - 为现有变量创建 boost::shared_ptr

我有一个现有的变量,例如inta=3;我现在如何创建boost::shared_ptr到a?例如:boost::shared_ptra_ptr=&a;//thisdoesn'twork 最佳答案 虽然您应该在创建它时将变量放入托管指针中,以便从现有指针中执行此操作。int*a=newint;boost::shared_ptra_ptr(a);那是说你绝对不想将堆栈变量放入shared_ptr会发生不好的事情如果由于某种原因一个函数需要shared_ptr而你只有一个堆栈变量,你最好这样做:inta=9;boost::shared_p

c++ - 为现有变量创建 boost::shared_ptr

我有一个现有的变量,例如inta=3;我现在如何创建boost::shared_ptr到a?例如:boost::shared_ptra_ptr=&a;//thisdoesn'twork 最佳答案 虽然您应该在创建它时将变量放入托管指针中,以便从现有指针中执行此操作。int*a=newint;boost::shared_ptra_ptr(a);那是说你绝对不想将堆栈变量放入shared_ptr会发生不好的事情如果由于某种原因一个函数需要shared_ptr而你只有一个堆栈变量,你最好这样做:inta=9;boost::shared_p