c➕➕声明一个国家基类Country,包含国名,首都,人口等属性。派生出省类Province,增加省会城市,人口等属性。定义派生类对象,并进行输出
时间: 2024-11-28 10:27:29 浏览: 21
在C++中,你可以这样声明一个基础类`Country`:
```cpp
class Country {
public:
// 国家属性
std::string country_name;
std::string capital;
int population;
// 构造函数
Country(const std::string& name, const std::string& capital, int pop) :
country_name(name), capital(capital), population(pop) {}
// 用于输出信息的方法
void displayInfo() const {
std::cout << "Country: " << country_name << ", Capital: " << capital << ", Population: " << population << std::endl;
}
};
```
然后,你可以派生出`Province`类来增加特定的属性:
```cpp
class Province : public Country {
public:
// 省级属性
std::string province_city;
// 构造函数,继承Country并添加新的属性
Province(const std::string& name, const std::string& capital, int pop, const std::string& city) :
Country(name, capital, pop), province_city(city) {}
// 重写或新增的输出信息方法
void displayInfo() const override {
Country::displayInfo();
std::cout << "Province: " << province_city << std::endl;
}
};
```
现在可以创建`Province`类型的对象并显示信息:
```cpp
int main() {
Province shandong("Shandong", "Beijing", 10000000, "Jinan");
shandong.displayInfo();
return 0;
}
```
阅读全文