Pass base class as an argument in a member function of the derived : <p>I have a derived class from an abstract class, and I am trying to pass it as an argument of a member class of the derived one. I also have a forward declaration issue. Any suggestions?</p>

<pre><code>class base;
void print(*base); 


class base {
public:
const int number = 5;
// ... virtual funcs etc.
};    

class derived:public base {
public:
void test() {
 print(&amp;base); // I guess here is the mistake
};

void print(*base) {
 cout &lt;&lt; base-&gt;number &lt;&lt; endl;
}
</code></pre>
