0

私はこれが何百万回も尋ねられたことを理解していますが、それでも私は解決策を見つけることができませんでした。

OSX 10.8、ブースト1.50、xcode4.5.1を使用しています。

  • macportsを使用してboostをインストールしました。
  • 空のxcodeプロジェクトを作成しました。私のmain.cppには次のコードが含まれています
    #include "boost / container / deque.hpp"
    int main(int argc、char * argv [])
    {{
        boost :: container :: deque d(12、5.5f);
        0を返します。
    }

  • '/ opt / local/include'を指すように'headersearchpath'を更新しました
  • '/ opt / local/lib'を指すように'librarysearchpath'を更新しました
  • 「c++言語方言」、「c ++標準ライブラリ」、およびその他の設定を変更しようとしましたが、まったく成功しませんでした。

プロジェクトをビルドすると、allocator_traits.hppとdeque.hppでセマンティックの問題に関連するエラーが発生し、その理由がわかりません。より多くのブーストライブラリを使い始めると、より多くのエラーがポップアップするのではないかと心配しています。

deque.hpp(482行目と483行目)
基本指定子はクラス名(ptr_alloc_tおよびallocator_type)である必要があります

ブーストを構成するには、他に何をする必要がありますか。なぜブーストの使用はとても複雑なのですか?

4

1 に答える 1

2

boost::container::dequeはテンプレート クラスであり、使用するタイプを指定する必要があります。あなたの場合、これはfloat次のとおりです。

boost::container::deque<float> d(12, 5.5f);

テンプレートの詳細については、こちらをご覧ください

于 2012-10-21T06:45:28.213 に答える