c 中子类能否访问父类成员_c++子类访问父类私有成员

#include#includeusingnamespacestd;classShape{public:virtualstringShapename(){return"Shape";}virtualintarea()=0;virtualdoublevolume()=0;};classPoint:publ...

#include

#include

using namespace std;

class Shape{

public:

virtual string Shapename(){

return "Shape";

}

virtual int area()=0;

virtual double volume()=0;

};

class Point:public Shape{

public:

Point(){}

Point(int x,int y){

this->x=x;

this->y=y;

}

string Shapename(){return "Point";}

int area(){return 0;}

double volume(){return 0;}

private:

int x;

int y;

};

class Circle:public Point{

public:

Circle(){}

Circle(int _r,int x,int y):Point(x,y){

r=_r;

}

string Shapename(){return "Circle";}

int area(){return 3.14*r*r;}

double volume (){return 0;}

private:

int r;

};

class Cylinder:public Circle{

public:

Cylinder(){}

Cylinder(int _h,int x,int y,int r):Circle(x,y,r){

h=_h;

}

string Shpaename(){return "Cylinder";}

int area(){return 0;}

double volume(){return 3.14*r*r*h;}//在这里报错,无法访问父类私有成员,那要怎么办,java里有super,c++这里要怎么办

private:

int h;

};

不要告诉我设置成public

展开


版权声明:本文为weixin_39764379原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。