2016-04-08 26 views
1

私のプロジェクトをVisual Studio 2012からVisual Studio 2015 Communityに切り替えることを試みています。不幸にもintellisenseはもはや構造体の内部で関数プロトタイプを見つけることができないので、オートコンプリートはこれらの関数には使用できません。 SHOW_STRUCTが定義されていないのに対し(私はdoxygenはおよびVisual Studio 2008との互換性のために、この特別な工事を必要とする)関数構造内のプロトタイプ - Intellisenseが見つかりません

#ifdef SHOW_STRUCT 
struct System 
#else 
struct SYSTEM 
#endif 
{ 
    /// <summary> 
    /// blabla 
    /// </summary> 
    void Reset(void); 

} System; 

私の構造体は、これらのように見えます。

functon System.Reset()を使用する場合、intellisenseと入力するとSystem.のメンバーは使用できません。構造体の内部の変数が見つかりました。

何か問題がありますか?

+0

問題を再現できません。 –

+0

おそらく、私のビジュアルスタジオには間違った設定がありますか? – LukiLeu

+0

あなたはVSを終了してから、ソリューションのコードブラウザデータベースファイルを削除してみることができます。これは、ソリューションのフォルダにある大きな* .sdfファイルです。次回VSがソリューションをロードするときに再構築されます。 –

答えて

0

解決策が見つかりました。私は* .cファイルで作業しました。しかし、私が望む機能はC++でのみサポートされています。プロジェクトをC++に切り替えることで問題は解決しました。

0

単純にSystem.Resetと入力すると、Intellisenseはシステムの静的関数ではないため、Intellisenseが見つからないことがあります。 Intellisenseがメンバ関数を与えるのを開始するためにSystemのインスタンスを持つか、Resetをstaticとして宣言する必要があるようです。

+0

私はあなたの両方の提案された修正を試みました、不幸にも何の仕事もありませんでした。それでも同じメッセージ。 – LukiLeu

+1

私は最初に考えましたが、スニペットの最後の行で 'System'に気付きました。 SHOW_STRUCTが定義されているかどうかに関わらず、ここでは 'System'という名前のインスタンスが定義されています。 –

関連する問題