c++ public 继承权限
时间: 2023-08-17 09:06:08 浏览: 102
C++中的public继承权限表示派生类可以访问基类的公有成员。在public继承中,基类的公有成员在派生类中仍然是公有的,可以通过派生类的对象直接访问。
例如,如果有一个基类Base和一个派生类Derived,其中Base有一个公有成员函数和一个公有数据成员,那么在Derived中使用public继承时,这些公有成员在Derived中仍然是公有的,可以直接访问。
以下是一个简单的示例代码:
```cpp
class Base {
public:
void publicFunction() {
// 公有成员函数
}
int publicData; // 公有数据成员
};
class Derived : public Base {
// 可以直接访问基类的公有成员
};
int main() {
Derived derivedObj;
derivedObj.publicFunction(); // 可以调用基类的公有成员函数
derivedObj.publicData = 10; // 可以访问基类的公有数据成员
return 0;
}
```
在这个例子中,Derived使用public继承自Base,因此Derived可以直接访问Base的公有成员函数publicFunction和公有数据成员publicData。
相关问题
c++ 继承为什么加public
在C++中,继承有三种访问权限:public、protected、private。当我们在声明一个继承关系时,加上public、protected、private关键字,用于指定派生类对基类成员的访问权限。
其中,public继承意味着派生类可以访问基类的public成员和protected成员,但不能访问基类的private成员。这是由于public继承是is-a关系,派生类是基类的一种特殊情况,因此可以访问公共的成员。
例如,如果有一个基类Animal,派生类Dog,Dog可以继承Animal的public成员和protected成员,因为Dog是一种Animal,可以具有Animal的特性和行为。
因此,public继承是最常用的继承方式。
c++中继承
C++中的继承是一种面向对象编程中的重要概念,它允许一个类(称为子类或派生类)继承另一个类(称为父类或基类)的成员变量和成员函数。
在C++中,使用关键字`class`定义一个类,使用关键字`public`、`private`和`protected`限定成员的访问权限。例如:
```c++
class Person {
public:
std::string name;
int age;
void sayHello() {
std::cout << "Hello, I am " << name << ", " << age << " years old." << std::endl;
}
};
class Student : public Person {
public:
std::string school;
void study() {
std::cout << name << " is studying at " << school << "." << std::endl;
}
};
```
在上面的例子中,`Student`类继承了`Person`类的`name`和`age`成员变量以及`sayHello()`成员函数,同时增加了自己的`school`成员变量和`study()`成员函数。通过使用`public`关键字,`Student`类可以直接访问`Person`类的公开成员。
可以使用继承来实现代码的复用和更好的结构化,同时可以增加代码的可维护性和可扩展性。
阅读全文