设为首页 加入收藏

TOP

C++虚函数访问权限的改变
2015-02-02 14:33:02 来源: 作者: 【 】 浏览:9
Tags:函数 访问 权限 改变

如果在基类中虚函数的访问权限是一种情况,那么派生类在继承基类的时候,派生类可以重新定义基类虚函数的访问权限,经过实例验证是正确的。


从这里也说明了函数的覆盖或者说重定义跟前面的访问权限修饰没多大关系


//Base.h?


#pragma once
#include
using namespace std;



class Base
{
public:
?Base(void){}
?~Base(void){}
?virtual?void fun(){cout<<"This is Base::fun"<?virtual void func()=0;
};


//Son.h


#pragma once
#include "base.h"
class Son :public Base
{
public:
?Son(void){}
?~Son(void){}
?virtual void fun(){cout<<"This is a son function"<protected:
?virtual void func(){cout<<"what a fuck day it is"<};


//T.h


#pragma once
#include "son.h"
class T :
?public Son
{
public:
?T(void){}
?~T(void){}
?void xy()
?{
? Base *b = new Son();
? b->func();
?}
};


//main.cpp


#include "testInline.h"
#include "Son.h"
#include "T.h"



void main()
{
?Base* pB;
?Son* pS = new Son();
?pB = pS;
?pB->fun();



?T tst;
?tst.xy();
}


结果:


This is a son function
what a fuck day it is


C语言梳理一下,分布在以下10个章节中:


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇让shell脚本中的echo输出带颜色 下一篇C++模板实现的AVL树

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: