I'm using Dev-C++ 5.2.0.1
I took an example of how to put a class in another file from a website but it resulted in an error.
In the file class.h I have:
class MyClass
{
public:
void foo();
int bar;
};
In the file class.cpp I have:
#include "class.h"
void MyClass::foo()
{
cout<< "test";
}
In the file main.cpp I have:
#include "class.h"
using namespace std;
int main()
{
MyClass a;
a.foo();
return 0;
}
Here is the error I get: [Linker error] C:\Users\Matthew\AppData\Local\Temp\cccWe7ee.o:main.cpp:(.text+0x16): undefined reference to `MyClass::foo()' collect2: ld returned 1 exit status
Is there something I'm doing wrong?
foo() only have definition. If you want to use a function that doesn't have a implement, Linker will give you this error "undefined reference".
New answer.
Are you compiling and linking all of your files together? In gcc you would do something like:
I'm not so sure about dev-c++, but I imagine it's not much different.