//public:Student(int s_age):People(s_age)
//C++的派生类构造函数后面是否带上基类构造函数,取决于基类构造函数是否需要传入参数,如果要参数,就一定带上;不需要参数,则可以不用带上(当然带上也是正确的)。比如基本构造函数是People::People()这样定义,那不需要在派生类的构造函数后面带上。需要注意的是,就算不带上的话,在用派生类生成对象的时候,也会自动调用基本的People()这个构造函数。
#include <iostream>
using namespace std;
//基类People
class People{
public:People(int p_age); //基类默认构造函数
protected:int m_age;
};
People::People(int p_age)
{m_age = p_age;}
//派生类Student
class Student: public People{
public:Student(int s_age):People(s_age) //C++的派生类构造函数后面带上基类构造函数,上面有详细说明
{
m_score = 90.50;
m_name = "aaaa";
}
public:void display();
public:float m_score;
};