C++中派生类如何使用基类中的数据成员

2020-11-27 05:03:27 字数 3519 阅读 8772

1楼:匿名用户

如果你是派生类实例,这个结果是正确的,派生后会覆盖基类成员。

2楼:匿名用户

派生类中继承了基类的数据成员,只有基类中的受保护

或者公有数据成员在被进行保护或公有继承时才能被派生类访问到。基类的私有成员是不可能被派生类访问到的。你用get()函数访问基类中的相同的数据成员,但是派生类既然已经继承了基类,自然基类的数据成员也继承了,这时候你访问的派生类的成员(不是你派生之后又添加的成员)时,实际上访问的就是基类的成员啊。

当然从实质上来看就是派生类的成员。

c++如何在派生类中使用基类中的数据成员?跪求大佬,挺急的!!!

3楼:

既然继承了,那基类中能被继承的数据成员就都成了派生类中的成员,就当派生类自己的成员用就是了!如——

c++中派生类如何访问基类成员变量?

4楼:匿名用户

t=animal.a;

这句话不行。a是一个普通成员变量,只有对一个具体的对象,才会有.a这种用法。

5楼:匿名用户

很简单,fish改成这样就可以了:

class fish:public animalint t;

void fw()

};因为fish是animal的子类,对于fish的任何一个对象,它也拥有animal的特征,所以a也是fish的。

6楼:匿名用户

这里a是public的可以直接访问

void fw()

当然为了表明它属于基类:

可以void fw()

如果是protected的也是这样做。

如果你把它弄成private的了,可以在基类中定义public的一个相应的gette/setterr函数即可。

如果实在不想这么做,又想访问,可以用指针的方法无视权限任意涂改,当然你要知道你的目的

别弄错了,因为正常合法是不允许这么做的,但练习无所谓。

7楼:匿名用户

问题1:静态变量可以通过继承到子类里,但是你不可能通过子类对x进行第二次初始化,绝对报错

问题2:你可以在子类里去修改这个静态变量,但是在修改这个值之后,即使你去调基类的foo函数,x还是你在子类里已经修改了的值,因为子类和基类的x其实是同一个,他们是同一块内存。

问题3:在基类里没法访问派生类的x。你可以通过多态的特性,在子类父类里写一个虚函数来设置x的值,然后通过使用a的指针去调用b类里的方法。

但是对静态变量而言没有什么意义,因为他们是同一个东西,在哪修改都一样。

8楼:浅浅

c++中派生类对基类成员的访问形式主要有以下两种:

1、内部访问:由派生类中新增成员对基类继承来的成员的访问。

2、对象访问:在派生类外部,通过派生类的对象对从基类继承来的成员的访问。

三种继承方式下,派生类对基类成员的访问规则。

1、私有继承的访问规则

2、公有继承的访问规则

3、保护继承的访问规则

c++中怎样用派生类的成员函数调用基类的函数? 5

9楼:

public和protected函数可以直接调用。

如果被重载了可以使用 “基类::函数” 这样的形式调用

如果是private就不行了,除非在基类友元自己

10楼:匿名用户

你是指在派生类成员函数中调用基类函数吗?可以通过基类的类名直接访问,比如基类a的函数fun(),在派生类b的fun()中使用a::fun()就是调用基类的函数了。

c++中派生类如何实现对基类私有成员的访问?

11楼:匿名用户

派生类不能对基类私有成员进行访问。

要在派生类中对基类成员进行访问,可以:

1,在派生类中对基类成员的public属性进行访问,以间接访问基类的私有成员;

2,在基类中将私有成员定义为protected访问属性,以在派生类中直接对其进行访问;

12楼:小帅姐姐狹

基类的私有成员在派生类中是不能直接访问的,但是基类一般会提供返回这些数据成员的方法,通过这些方法来获取基类私有成员的值

比如基类中有一个成员变量name

一般通过getname()方法就可以访问到

c++中基类能用派生类中的成员吗

13楼:

不能。派生类可以使用基类的,但基类无法访问派生类中的成员数据或成员函数。因为基类不可能知道它的派生类有哪些成员数据或函数。

14楼:矢的猛

不能。不能。

15楼:匿名用户

不能,只能派生类使用基类的方法

请问c++中在派生类中若要访问基类成员要使用什么关键字??

16楼:黄邦勇帅哥哥

直接访问就行了,若是派生类覆盖了同名的基类成员则使用::作用域解析运算符即可,若基类的成员是私有的则派生类是无法访问基类的成员的。

示例:class a;

class b:public a

};void main()

17楼:匿名用户

如果是基类的public或protected成员,直接访问即可

如果是private成员,则不能访问,是成员变量,则看有没有提供访问函数

18楼:匿名用户

什么关键字都不需要,直接访问即可

c++基类中的成员函数的参数是派生类怎么办

19楼:匿名用户

先声明派生类,将成员函数参数设为派生类的引用#include

using namespace std;

class b;

class a;

int main()

不知道你是不是要问这个

20楼:匿名用户

那还放在基类搞什么,不如弄成虚函数。

c++派生类的对象对它的基类成员中什么是可访问的?

21楼:手机用户

所有的继承方式的访问性:

继承方式 基类成员特性 派生类成员特性 派生类对象访问公有继承 public public 可直接访问protected protected 不可直接访问private 不可访问 不可直接访问

私有继承 public private 不可直接访问protected private 不可直接访问private 不可访问 不可直接访问

保护继承 public protected 不可直接访问protected protected 不可直接访问private 不可访问 不可直接访问

是否可以解决您的问题?