Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Forms 将表单中的代码放入.cpp文件中_Forms_File_C++ Cx - Fatal编程技术网

Forms 将表单中的代码放入.cpp文件中

Forms 将表单中的代码放入.cpp文件中,forms,file,c++-cx,Forms,File,C++ Cx,我用这种方式创建了一个表单(表单的.h文件名为Example): 这是表单中的默认代码: namespace ExampleNamespace{ public ref class Example : public System::Windows::Forms::Form { public: void DoSomething() { // code here } }; } 我能接受这个吗 创建一个新的.cpp文件

我用这种方式创建了一个表单(表单的.h文件名为
Example
):

这是表单中的默认代码:

namespace ExampleNamespace{

public ref class Example : public System::Windows::Forms::Form
{
   public:
        void DoSomething()
        {
              // code here
        }
};
}
我能接受这个吗

创建一个新的.cpp文件并命名为
Example.cpp
am,将表单中的所有代码都放在.cpp中?这样就不行了

namespace ExampleNamespace{

public ref class Example : public System::Windows::Forms::Form
{
   public:
        void DoSomething(); //if i try in this way I will have the error from above
};
}
Example.cpp

#include "Example.h"

void Example::DoSomething()
{
   //code here
}
如果我尝试添加
public:void DoSomething()在表单i中有以下错误:

error LNK2020: unresolved token (060000BB) ExampleNamespace.Example::DoSomething

我得到了答案,您需要在.cpp文件中包含.h文件之后包含名称空间,如下所示:

#include "Example.h"

using namespace ExampleNamespace;
在*.h文件中,您需要输入以下代码:

#ifndef _EXAMPLE_H_
#define _EXAMPLE_H_

像这样:

#ifndef _EXAMPLE_H_
#define _EXAMPLE_H_

namespace ExampleNamespace{

public ref class Example : public System::Windows::Forms::Form
{
   public:
        void DoSomething()
        {
              // code here
        }
};
}

#endif

你的问题是什么?你试过什么?当你说“不工作”时,你需要更具体(错误消息,编译器输出,…)如果你希望正确的帮助不是C++代码,那就是。我打赌编译器不会说“不工作”。我打赌编译器会给出一条有用的错误消息。你可以看到这个信息,但我们看不到。请纠正您问题中的缺陷。第一个代码是新表单应用程序的默认代码。问题是我是否可以将每个方法中的所有代码都放在一个.cpp文件中。secound代码是我尝试的一种方式,但不起作用。您所有的示例都使用大写D表示DoSomething,编译器使用exampleMespace。Example::DoSomething使用小写D表示DoSomething
#ifndef _EXAMPLE_H_
#define _EXAMPLE_H_

namespace ExampleNamespace{

public ref class Example : public System::Windows::Forms::Form
{
   public:
        void DoSomething()
        {
              // code here
        }
};
}

#endif