I get the following error(marked in the code):
Quote:
error C2662: 'species' : cannot convert 'this' pointer from 'const class Duck' to 'class Duck &'
Conversion loses qualifiers
Code:#include<iostream>
using namespace std;
class Duck
{
public:
virtual void species() = 0;
};
class Mallard : public Duck
{
public:
void species()
{
cout<<"Mallard"<<endl;
}
};
void operateDuck(const Duck* pDuck)
{
pDuck->species();
}
int main()
{
Mallard myDuck;
operateDuck(&myDuck);
cout<<endl;
return 0;
}