C++ 错误C2084:函数已具有主体

C++ 错误C2084:函数已具有主体,c++,visual-c++,C++,Visual C++,我想不出我需要做什么来修复这个错误或者在这个网站上找到任何东西。基本上我得到了错误C2084:函数“Calculator::GUI::GUI(void)”已经有了一个主体。我所拥有的只是一个添加到Win32应用程序calculator中的名为GUI的windows窗体 在GUI.h中: #pragma once namespace Calculator { using namespace System; using namespace System::ComponentModel; usin

我想不出我需要做什么来修复这个错误或者在这个网站上找到任何东西。基本上我得到了错误C2084:函数“Calculator::GUI::GUI(void)”已经有了一个主体。我所拥有的只是一个添加到Win32应用程序calculator中的名为GUI的windows窗体

在GUI.h中:

#pragma once

namespace Calculator {

using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;

/// <summary>
/// Summary for GUI
/// </summary>

public ref class GUI : public System::Windows::Forms::Form
{

void AddControls();
public:
    GUI()
    {
        InitializeComponent();
        //
        //TODO: Add the constructor code here
        //


    }

通过将所有内容都放在GUI.h文件中,我得到了想要的结果,但我希望将该方法的代码放在.cpp文件中。

如下更改标题:

public ref class GUI : public System::Windows::Forms::Form
{

void AddControls();
public:
    GUI();
}

您可以看到,头应该只包含声明,并将实现放入cpp。

更改头,如下所示:

public ref class GUI : public System::Windows::Forms::Form
{

void AddControls();
public:
    GUI();
}

您知道,头应该只包含声明,并将实现放入cpp。

该错误消息可能意味着什么?编译器本身正在告诉您。只需在“输出”窗口中查看错误,并查看它以前在何处实现。该错误消息可能意味着什么?编译器本身正在告诉您。只需在“Output”窗口中查看错误,并查看它以前在何处实现。如果在头文件中定义构造函数很短,那么它没有错。在头文件中定义构造函数没有什么错,如果它很短的话。它只是内联的。