Error : **** has not been declared
<p>In my Function.h file:</p>

<pre><code>class Function{
public:
Function();
int help();
};
</code></pre>

<p>In my Function.cpp file:</p>

<pre><code>#include "Function.h"
int Function::help() //Error here
{
using namespace std;
cout &lt;&lt; "Help";
return 1;
}
</code></pre>

<p>In my Main.cpp</p>

<pre><code>#include &lt;iostream&gt;
#include "Function.h"
using namespace std;

int menu(){
Function fc;
fc.help();
return 1;}

int main(int args, char**argv){
    return menu();}
</code></pre>

<p><br/>
Error is : ‘Function’ has not been declared
<br/>
Can anybody tell me why? Thank you.</p>

<p>I tried like this and the problem is solved, but I dont really understand why:<br/>
In Function.h file: <br/>
I use </p>

<pre><code>class Function{
public:
int status;
Function():status(1){}
int help();
};
</code></pre>

<p>instead of the old one</p>

<pre><code>class Function{
public:
Function();
int help();
};
</code></pre>
