📄 完美c++疑难解答-继承.txt
字号:
1.解决构造函数参数列表问题...
#include "stdafx.h"
//Show(): 显示日期--class Day ; 显示时间 class Time
class Day
{
public:
Day(int year,int month,int day);
void ShowDayTime();
private:
int m_year,m_month,m_day;
};
Day::Day(int year,int month,int day)
{
m_year=year;
m_month=month;
m_day=day;
}
void Day::ShowDayTime()
{
cout<<"日期:"<<m_year<<"-"<<m_month<<"-"<<m_day<<endl;
}
class Time:public Day//"private:派生类都不可以访问...其余看限定符号...把基类的成员归纳到//自己是什么访问权限...记得是自己派生类的权限...不可以象private
{
public:
Time(int hour,int min,int second,int year,int month,int day):Day(year,month,day)
{
m_hour=hour;
m_min=min;
m_second=second;
}
void ShowDayTime();
private:
int m_hour,m_min,m_second;
//protected:
// int m_year,m_month,m_day;// 派生类可以访问的....
};
void Time::ShowDayTime()
{
// cout<<"日期:"<<m_year<<"-"<<m_month<<"-"<<m_day<<endl;//这个是错误的... 派生类不可以//访问基类的成员...当作...public虽说是继承下来...但是访问权限...仍然改变不了...就象偶跟偶//老爸之间。不管类如何组合...应该是...最小类的归属问题...
//偶想解决这个问题...就用保护继承吧....
Day::ShowDayTime();
cout<<"时间:"<<m_hour<<"-"<<m_min<<"-"<<m_second<<endl;
}
void main()
{
Time time(16,47,56,2007,11,9);
time.ShowDayTime();
}
2. 多态继承
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -