2

我正在将一个小型 C++/CLI 项目从 VS2008 迁移到 VS2012,并且遇到了一个令人沮丧的问题。

在我的 MainForm 中,我有两个类的前向声明。它们位于命名空间声明和 MainForm 声明之间。

这两个前向声明导致设计人员抱怨错误“可以设计 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 回答