Các mã sau đây:C++ 0x regex trong GCC
#include <regex>
using namespace std;
(snippage)
regex_search(s, m, re);
công trình trong Microsoft C++, nhưng GCC 4.4.3 cung cấp cho các thông báo lỗi sau:
/usr/include/C++/4.4/tr1_impl/regex: 2255: cảnh báo: hàm inline 'bool std :: regex_search (_Bi_iter, _Bi_iter, std :: match_results < _Bi_iter, _Allocator> &, const std :: basic_regex < _Ch_type, _Rx_traits> &, std :: regex_constants :: match_flag_type) [với _Bi_iter = __gnu_cxx :: __ normal_iterator, std :: a llocator>>, _Allocator = std :: cấp phát, std :: cấp phát>>>>, _Ch_type = char, _Rx_traits = std :: regex_traits]' được sử dụng nhưng không bao giờ được xác định
Tất nhiên nó sẽ không ngạc nhiên cho tôi nếu regex chỉ đơn giản là một trong những tính năng C++ 0x vẫn còn trên danh sách việc cần làm cho GCC, nhưng những gì tôi đang gãi đầu của tôi là, trong trường hợp đó, tại sao nó vui vẻ đưa chỉ thị bao gồm, khai báo biến vv và chỉ có chuyến đi qua cuộc gọi hàm (mà nó thậm chí có vẻ hiểu).
Có điều gì tôi thiếu không?
Bạn đang biên soạn với '-std = C++ 0x'? – ismail
Có. Dường như vấn đề là regex chỉ được triển khai một phần. – rwallace
bạn có thể sử dụng để thay thế. –