Zunächst einmal unten Code ist nicht arbeiten Visual C + +, aber workin mit Blutvergießen
Die Ausgabe ist 0, aber meiner Meinung nach sollte sie 1 sein; kann mir das jemand erklären?
#include<iostream>
using namespace std;
class shape
{
public:
virtual void print() const =0;
virtual double area() { return 0.0;}
};
class point : public shape
{
int x;
int y;
public :
point(int a=11, int b=11)
{
x=a;
shape *s;
s=this;
cout<<s->area();
y=b;
}
double area()const {return 1.0;}
void print() const
{
cout<<"\nPoint\n";
cout<<x<<"\t"<<y;
}
};
int main()
{
point p(1,2);
return 0;
}