C++继承类静态成员处理
- C++继承类静态成员处理 推荐度:
- 相关推荐
C++继承类静态成员处理
class A
{
public:
static string name;//父类静态函数
public:
static void add()
{
cout<<"打印小明"<<endl;
}
}
string A::name="小明";//外部赋值A类对象
class B:public A//继承父类A
{
public:
static string name;//父类同名静态属性
public:
static void add()//父类同名静态函数
{
cout<<"打印小红"<<endl;
}
}
string B::name="小红";//外部赋值B类对象
int main()
{
B b;
cout<<b.name<<endl;//通过对象访问B类静态成员,结果为小红
cout<<b.A::name<<endl;//通过对象访问A类静态成员,结果为小明
cout<<B::name<<endl;//通过子类名来访问子类类静态成员,结果为小红
cout<<B::A::name<<endl;//通过子类名来访问父类作用域的静态成员,结果为小明
b.add();//通过对象调用静态函数,结果为打印小红
b.A:add();//通过对象调用父类静态函数,结果为打印小明
B:add();//通过子类名调用子类静态函数,结果为打印小红
B:A:add();//通过子类名调用父类作用域的静态函数,结果为打印小明
注意事项:继承函数时,出现同名,子类会隐藏父类同名函数
}
最新文章
- python len ljust
- 大连软件行业概况
- 自定义微信小程序tabBar组件上边框的颜色
- “脱离应用开发者的数据库,不会成功”,黄东旭万字长文剖析数据库发展新趋势...
- win rar如何注册破解
- 安装MinGW和MSYS
- 回溯法(算法分析与设计)
- Spring Security登录用户数据获取(4)
- Gallery3d 学习笔记(13)
- 数字芯片设计流程
- C语言中的void和void指针
- MongoDB勒索事件中,DBA们到底该学到什么?
- 曼哈顿距离,欧式距离,明式距离,切比雪夫距离区别
- 信息论与编码
- R型聚类分析
- Qt数据库:(五)QSqlQueryModel
- C语言简单实现通讯录