在另一个文件中定义类方法

时间:2012-11-21 18:27:05

标签: c++ winapi

我知道如何在类所在的同一文件中定义一个类方法。

例如:

class Robot
{public:
 int location;

 void Moves(); //Class method to be defined
}

void Robot::Moves()
{//Method definition here }

我不知道在类所在的文件之外定义一个类。我尝试创建一个.hpp文件并在其中定义一个类方法,但我的编译器表示它无法加载一个类从创建类的文件以外的文件中定义,或者就像我在include指令之前放置函数的定义一样。

请注意:原始类文件也在.hpp文件中,因为我还没有学习如何使用主要文件以外的.cpp文件。

这是使用C ++ / Win32 完成的。

2 个答案:

答案 0 :(得分:2)

根据这些指南创建.cpp文件

  • 在.cpp文件中包含您的类头文件
  • 包括您将在main.cpp
  • 中使用的所有必要标头
  • 为您的班级使用范围运算符

#include <iostream>
#include "foo.hpp"

foo::foo()
{
//    code here
}

void foo::OtherFunc()
{
//    other stuff here
}

答案 1 :(得分:1)

只需将您的定义放在.cpp文件中,然后将其与您的应用程序链接即可。

Robot.hpp:

class Robot
{public:
 int location;

 void Moves(); //Class method to be defined
}

Robot.cpp:

#include "Robot.hpp"

void Robot::Moves()
{//Method definition here }