CDTでEclipse Junoを使用して、カスタムmakefileでC++プロジェクトを開発しています。私はC++ 11の機能も使用しています。これはEclipseのパーサで、ここでアドバイスを受けて作業する必要があります。Eclipse CDTはSTLコンテナ内の要素のメソッドを解析できません
問題は、EclipseがSTLコンテナ要素でアクセスされるメソッドまたはフィールドを解析できないことです。例:
mainapp.h
typedef struct _PlayerCalibrationData {
[...]
std::string getSamplesStr()
{
[...]
}
} PlayerCalibrationData;
std::vector<MainApp::PlayerCalibrationData> m_calibrationData;
mainapp.cpp
m_calibrationData[0].getSamplesStr();
getSamplesStr()
がメッセージ「メソッド 'getSamplesStr' で、エラーとして下線とマークされますができませんでした解決されるべきである。
しかし、私がEclipseかコマンドラインから呼び出すかどうかにかかわらず、コンパイラは不平を言っていません。また
は、私がm_calibrationData.
入力すると、すべてのベクトルの方法は(それが含まEclipseがベクトルを見つけていないの問題ではないのIE)コンテンツ・アシストを経由してポップアップし、しかし、すぐに私は[]
かat()
を経由して要素にアクセスすると、コンテンツアシスト静かで、手動で入力されたものはエラーとしてマークされます。
これは正常ではありませんか?はいの場合、テンプレートベースのコンテナのアシスト/修正を特にオフにする方法はありますか?
EDIT
私は今も、C++ 11のサポートを無効にすることを試みたが、私は、問題が消えることを行う場合 - しかし、その後の進路C++ 11種類と、構文が認識されません。
EDIT 2
私は正確に同じ設定を入力し、第二のプロジェクトをインポートして、このプロジェクトの解析のための作品。唯一の違いは、プロジェクトレイアウト(makefileの異なる場所)です。しかし、最初のプロジェクトを削除して再インポートしても、それはまだ機能しません。
問題は[this](https://bugs.kde.org/show_bug.cgi?id=299124)と同じである可能性が高いですが、それは日食ではありません。 cdtのバグを投稿します –
CDTが 'std :: vector'の' operator [] 'の戻り値を適切に解析していないようです。また、 'foo.push_back(m_calibrationData [0])'のような文に対して "無効な引数"のようなエラーが出ますか? [このバグ](https://bugs.eclipse.org/bugs/show_bug.cgi?id=349849)を参照してください。 –