昨天,boost终于发布了1.34版本。该版本新增加了几个内容:
1. BOOST_FOREACH 宏
一直对于C++的iterator枚举元素造成的bad smell感到无奈,同时,许多语言都增加了foreach机制。终于,boost增加了这个枚举工具。从此,C++的枚举不再难看。如:
#define foreach BOOST_FOREACH
short array_short[] = { 1, 2, 3 };
foreach( short & i, array_short )
{
++i;
}
BOOST_FOREACH宏大大改良了代码可读性。
上述程序执行后,array_short的内容为:{2,3,4}。
2. 状态图
随着工作流(WorkFlow)的流行,Boost也加入了状态机。这对于程序结构的优化,将是一个好的补充。
3. Tr1
随着C++0x的进展,Tr1已经被通过。下一次Boost可能将增加Tr2了。
4. Typeof 库
C++0x中的auto的替代品。时常关心C++0x进展的人就会知道auto的作用,现在终于可以提前使用了。只是没有auto漂亮,目前也仅能如此了,毕竟它现在能工作。
5. Xpressive库
属于C++的正则表达式库。以前都是用字串来保存正则表达式,现在终于可以用C++的表达式来写正则了。
见 http://www.boost.org