Dev C++のBoostライブラリ、特に正規表現のライブラリを使用して問題が発生しています。Dev C++とBoost :: regexのリンケージの問題
ブースト:: re_detail :: get_mem_block()」 `に[リンカエラー]未定義の参照:
#include string #include iostream using namespace boost; regex expression("([0-9]+)(\\-| |$)(.*)"); // process_ftp: // on success returns the ftp response code, and fills // msg with the ftp response message. int process_ftp(const char* response, std::string* msg) { cmatch what; if(regex_match(response, what, expression)) { // what[0] contains the whole string // what[1] contains the response code // what[2] contains the separator character // what[3] contains the text message. if(msg) msg->assign(what[3].first, what[3].second); return std::atoi(what[1].first); } // failure did not match if(msg) msg->erase(); return -1; }それは私を投げエラーは次のとおりです。私は、彼らの例のコードを使用して試してみました
他にも多くのリンカーエラーがあります。私はそれを修正する方法を見つけることができないようだ、私は他のコンパイラに出くわしたこの問題を検索しても。私は既に他のヘッダーファイル用のインクルードパスをプロジェクトに追加しました。
どうすれば回避できますか? DevC++のコンパイル方法を変更する必要がある場合は、[ファイル]タブまたは[パラメータ]タブから変更する必要がありますか? また、あまりにも別のことではなく、誰かが私にコンパイラについての良いガイドやページを勧めてくれますか? (私はC++のページで多くを見つけることができなかったので)。
ありがとうございました。
(これはあなたの問題とは何の関係もありませんが、...)のDev-C++は、石器時代のコンパイラを使用します(GCC 3.4.5アイム場合間違いではない)、石器時代のMinGW版と一緒に。 IDE自体も石器時代ですから、チャンスをつかんだときにそれらをアップグレードすると、あなたはそれを後悔しません)。 – rubenvb
私は今MinGWの最新バージョンをダウンロードしました。ありがとう – Filgera