草庐IT

ZN5boost

全部标签

c++ - 从 boost ptime 获取年份

我正在将现有程序转换为C++,这里需要操作Sybase时间戳。这些时间戳包含日期和时间信息,据我所知最好由boost::posix_time::ptime变量处理。在代码的一些地方,我需要从变量中获取年份。我的问题是:如何最有效地从boostptime变量中提取年?下面是一个示例程序,其中包含三行代码,以及一个额外的ostringstream变量和一个boost::gregorian::date变量。根据boost文档:Classptimeisdependentongregorian::datefortheinterfacetothedateportionofatimepoint但是g

c++ - 尝试包含 '#include <boost/regex.hpp>' 时,我得到 : 1>LINK : fatal error LNK1104: cannot open file 'libboost_regex-vc100-mt-gd-1_39.lib'

不知道为什么会这样,我从here下载了库虽然我有一个名为“libboost_regex-vc90-mt-gd-1_39.lib”的库,但我没有一个名为“libboost_regex-vc100-mt-gd-1_39.lib”的库,将vc90重命名为vc100就可以了但我不确定这是否是理想的解决方案?#include"stdafx.h"#include#include#include#defineBOOST_ALL_NO_LIBint_tmain(intargc,_TCHAR*argv[]){boost::arraya;boost::smatchs;getchar();return0;}

c++ - 在 Visual Studio 2010 中 boost ,IntelliSense 错误

我想看看你能不能给我定位。碰巧我编译并引用了boost库,以便将它们与VisualStudio2010一起使用。在构建我的测试项目时,我遇到了这两个IntelliSense错误1IntelliSense:#errordirective:"MacroBOOST_LIB_NAMEnotset(internalerror)"c:\boost_1_43_0\boost\config\auto_link.hpp2IntelliSense:#errordirective:"somerequiredmacroswherenotdefined(internallogicerror)."c:\boost

c++ - 如何使用 Boost::regex_search 捕获重复组的所有匹配项?

我正在尝试使用正则表达式解析输入字符串。trycatch重复组时遇到问题。我似乎总是匹配该组的最后一个实例。我试过使用不情愿(非贪婪)量词,但我似乎遗漏了一些东西。有人可以帮忙吗?尝试了正则表达式:(OS)\\s((\\w{3})(([A-Za-z0-9]{2})|(\\w{3})(\\w{3}))\\/{0,1}){1,5}?\\r(OS)\\s((\\w{3}?)(([A-Za-z0-9]{2}?)|(\\w{3}?)(\\w{3}?))\\/{0,1}?){1,5}?\\r输入字符串:OSBENKL/LHRBA/MANQFL\r\n我似乎总是得到最后一组,即MANQFL组(MAN

c++ - boost::filesystem::rename:当文件已经存在时无法创建文件

我正在使用boost::filesystem重命名文件,有时目标文件会存在。根据此处的boost文档:http://www.boost.org/doc/libs/1_42_0/libs/filesystem/doc/reference.html#Non-member-functionstemplatevoidrename(constPath1&from_p,constPath2&to_p);Requires:Path1::external_string_typeandPath2::external_string_typearethesametype.Effects:Renamesfro

c++ - Boost MSM 仅处理内部转换

我正在使用新的Boost1.44.0MSM库来生成状态机。在此状态机中,有两类事件class1和class2。class1事件可以由状态S1或S2处理,而class2事件只能由状态处理>S2。特殊的class1事件upgrade_req请求从状态S1升级到状态S2。我在Boost::MSM中实现了如下://StateS1andS2allowanyclass1eventsstructclass1{};//OnlystateS2allowsclass2eventsstructclass2{};//anupgraderequestisaclass1eventthatrequestsanupg

c++ - Boost 插件选择

我希望在我们当前的应用程序(Unix、C++)中实现一个插件架构,并且一直在审查Boost库中的选项(待批准)。编辑:我希望在运行时动态添加类。Boost.Pluginboost.反射boost.扩展我想知道每个人对这些和其他实现的经验/意见是什么。 最佳答案 嗯。我们刚刚使用了dlopen和dlsym连同一对extern"C"static必须在dll中定义的函数extern"C"staticplugin*create(arg_pack*);extern"C"staticerrno_tdestroy(plugin*);让插件管理器查

c++ - 使用 Boost::Regex 获取最后一场比赛

我在带有Boost的C++中有一个正则表达式,它匹配多行字符串中的行。正则表达式搜索找到第一个匹配项,但我对匹配的最后一行感兴趣。我现在使用的代码是这样的:matched=boost::regex_search(input,results,regex);if(!matched){return-1;//errorcode}matched_string=results["Group"];如果regex是"(?Data.)"和input是"Data1Data2Data3",然后matched_string现在是"Data1".我希望它是"Data3". 最佳答案

c++ - 元编程:从 boost mpl::vector 中的每个类继承

我希望继承包含在boostmpl::vector中的一组类。这可能吗?具体来说,我希望为任意多个模板参数扩展test,作为mpl::vector传递。templatestructSlice{public:virtualvoidfoo(Tv)const=0;};structA{};structB{};templatestructtest:publicSlice,publicSlice{voidfoo(T1a)const{std::cout如果我知道只有两个参数那么我可以简单地写:templatestructtest:publicSlice>::type>,publicSlice>::ty

c++ - 如何在不删除元素并将其重新插入到 boost::multi_index_container 的情况下移动元素?

我正在使用boost::multi_index_container提供对元素集合的随机访问和基于散列的访问。我想更改元素的随机访问索引,而不更改基于哈希的索引。这是一段代码:#include#include#include#include#includeusingnamespacestd;usingnamespaceboost;usingnamespaceboost::multi_index;//classrepresentingmyelementsclassElement{public:Element(conststring&new_key):key(new_key){}string