首页
学习
活动
专区
工具
TVP
发布

Boost库
EN

Stack Overflow用户
提问于 2008-09-29 15:43:29
回答 10查看 11.4K关注 0票数 53

自从我开始使用这个网站以来,我一直听到关于Boost库的消息。我想知道Boost库的一些主要好处是什么(因此我为什么要使用它),Boost库的可移植性如何?

EN

回答 10

Stack Overflow用户

发布于 2008-09-29 15:48:15

您只需阅读Boost Background Information页面,就可以快速了解应该使用Boost的原因以及使用它的目的。值得花几分钟的时间。

票数 19
EN

Stack Overflow用户

发布于 2008-09-29 15:52:36

99%便携。

我想说的是,它有相当多的库,一旦你发现boost解决了一个需求,这些库就会非常有用。你可以自己编写代码,也可以使用非常可靠的库。拥有像多索引,Lambda,程序选项,RegEx,SmartPtr和元组这样的东西的货架源码是令人惊讶的……

最好的做法是花一些时间浏览不同库的文档,并评估它是否对您有用。

值得!!

票数 16
EN

Stack Overflow用户

发布于 2008-09-29 15:46:22

你会得到很多C++0x中即将出现的东西。但是除了这个通用性之外,一些更好的细节是一个简单的regex library,一个用于casting from strings to ints (词法转换)的模型库:

代码语言:javascript
复制
int iResult = 0;
try
{
    iResult = lexical_cast<int>("4");
}
catch(bad_lexical_cast &)
{
    cout << "Unable to cast string to int";
}

一个date/time library,还有其他的.

代码语言:javascript
复制
using namespace boost::gregorian;
date weekstart(2002,Feb,1);
date thursday_next = next_weekday(weekstart, Thursday); // following Thursday

还有一个Python interface (Boost Python),一个lexer/parser DSL (Boost精灵):

代码语言:javascript
复制
// A grammar in C++ for equations
group       = '(' >> expression >> ')';
factor      = integer | group;
term        = factor >> *(('*' >> factor) | ('/' >> factor));
expression  = term >> *(('+' >> term) | ('-' >> term));

而这只是触及了皮毛...

票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/149268

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档