3

構文補完のために Eclipse CDT で shared_ptr を T * として扱うにはどうすればよいですか?

この例ではウィンドウを使用しています。「Program Files」フォルダに 1.39 があります。1.37を試してみます。

Eclipse の Galileo リリースを使用しています。また、Eclipse でソースを編集および参照し、VC++ Express でビルドするだけです。(でもそれはまた別の話)

4

4 に答える 4

4

どのバージョンのブーストを使用していますか?

このスレッドによると:

Boost 1.39 には、CDT インデクサーが気に入らない点があることが判明しました。
CDT にブースト 1.36 のインデックスを許可すると、以下のように typedef された要素に対してオートコンプリートが機能します。
1.39 のみのインデックスを許可すると、同じオートコンプリートが機能しません。

( CDT5 または 6で発生)

于 2009-10-06T12:10:29.323 に答える
2

ブースト ライブラリの Eclipse CDT インデックス作成は、バージョン 1.37 (または 1.36 でさえ、それを確認できませんでした) ですでに苦労し始めています。

最新のブースト バージョン (1.39) を使用しているときにコード補完を利用するための回避策は次のとおりです。

  • 私のコンピューターには 2 つのブースト バージョン (1.35 と 1.39) があります。
  • デバッグ ビルド構成 (設定/ディレクトリ) で、インクルード パスを古いブースト バージョンに設定しました。
  • リリース ビルド構成で、インクルード パスを実際のブースト ライブラリに設定しました。
  • インデクサー オプションの [インデクサーのビルド構成] を [固定ビルド構成を使用] > [デバッグ] に設定しました。

インデクサーは、インデックス作成とコード補完に古いライブラリを使用するようになりましたが、リリース バージョンは引き続き最新のブースト バージョンでコンパイルされます。少なくともこれは私にとってはうまくいきました。同じ問題が発生している場合は、ビルド構成でこれを確認してください!!

于 2009-11-03T09:19:56.293 に答える
1

CDT 7.0 の対応するバージョンを使用して Eclipse 3.6 M5 (Helios マイルストーン ビルド) で試してみたところ、CDT 6 を使用する Eclipse 3.5 で以前に失敗した boost::shared_ptr を自動完了できました。Boost を使用しています。 1.40 だったので、テンプレート インデクサーに問題があったとしても、彼らはそれを修正したに違いありません。

http://www.eclipse.org/downloads/にアクセスし、「Development Builds」を選択してから、通常どおり「Eclipse for C/C++」を選択すると、新しいビルドを試すことができます。

于 2010-02-09T21:43:19.347 に答える
0

これは長い間私にとってフラストレーションの原因でしたが、最近 Galileo と CDT 6 にアップグレードした後、現在は機能しています!

ブースト: 1.39
CDT: 6.0.2.201002161416

お役に立てれば。

于 2010-04-05T16:19:25.553 に答える