昨天,boost終于發(fā)布了1.34版本。該版本新增加了幾個內(nèi)容:
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宏大大改良了代碼可讀性。
上述程序執(zhí)行后,array_short的內(nèi)容為:{2,3,4}。
2. 狀態(tài)圖
隨著工作流(WorkFlow)的流行,Boost也加入了狀態(tài)機。這對于程序結(jié)構(gòu)的優(yōu)化,將是一個好的補充。
3. Tr1
隨著C++0x的進(jìn)展,Tr1已經(jīng)被通過。下一次Boost可能將增加Tr2了。
4. Typeof 庫
C++0x中的auto的替代品。時常關(guān)心C++0x進(jìn)展的人就會知道auto的作用,現(xiàn)在終于可以提前使用了。只是沒有auto漂亮,目前也僅能如此了,畢竟它現(xiàn)在能工作。
5. Xpressive庫
屬于C++的正則表達(dá)式庫。以前都是用字串來保存正則表達(dá)式,現(xiàn)在終于可以用C++的表達(dá)式來寫正則了。
見 http://www.boost.org