2

小さな C++/CLI プロジェクトを VS2008 から VS2012 に移行していて、イライラする問題に遭遇しました。

私の MainForm には、クラスの前方宣言が 2 つあります。これらは名前空間宣言と MainForm 宣言の間にあります。

これら 2 つの前方宣言により、デザイナーは「クラス MainForm を設計できますが、ファイル内の最初のクラスではありません。Visual Studo では、デザイナーがファイル内の最初のクラスを使用する必要があります。クラス コードを移動して、はファイル内の最初のクラスであり、デザイナーを再度ロードしてみてください。」

潜在的な解決策に関するアイデアはありますか? 私は参考文献をクラスに入れてみましたが、クラスの後でも良い結果は得られませんでした。

4

1 に答える 1

3

Visual Studio は、MainForm最初にクラスを確認する必要があります。MainFormインクルードを追加せずにこれを行う最も簡単な方法は、それ自体を前方宣言することです。

namespace TheNameSpace
{
    ref class MainForm;
    // Other forward declarations go here

    public ref class MainForm
    {
        //Full class declaration goes here
    };
}
于 2012-10-02T22:00:20.103 に答える