2011-12-30 61 views
2

當試圖通過#include'ing升壓/ regex.hpp使用boost regex庫,然後創建該類的對象:不能使用boost ::正則表達式

boost::regex empty_line("^\\s*$"); 

試圖我收到以下錯誤編譯它:

D:\...\boost\regex\v4\cpp_regex_traits.hpp:366: error: undefined reference to `boost::re_detail::cpp_regex_traits_char_layer<char>::init()' 

任何想法如何解決它?

+1

你是否包括所需的lib當您編譯項目?你的編譯器需要一個鏈接。 – 2011-12-30 15:41:12

+0

如果您不想鏈接任何內容,請改用[Boost.Xpressive](http://www.boost.org/libs/xpressive/)。 – ildjarn 2011-12-30 17:55:20

回答

4

Boost正則表達式是boost的幾個部分之一,需要你建立boost庫和鏈接。

參見:WindowsUnix