class A{
public:
A(){func(0);};
virtual void func(int data){printf("A1 :%d",data);}
virtual void func(int data) const{printf("A2 :%d",data);}
void func(char *str){printf("A3 :(%s)",str);}
};
class B:public A{
public:
void func(){printf("B1 :%s","");}
void func(int data){printf("B2 :%d",data);}
void func(char *str){printf("B3 :(%s)",str);}
};
int main()
{
A *pA;
B b;
const A *pcA;
pA=&b;
pA->func(1);
pA->func("test");
A().func(1);
pcA=&b;
pcA->func(2);
return 0;
}
程序运行的结果:
A1 :0
B2 :1
A3 :(test)
A1 :0
A1 :1
A2 :2
1)
基类的指针指向派生类对象:那么该指针只能够调用基类所定义的函数,但是如果该函数为虚函数,则调用该派生类自己的成员函数。(B2 :1)
2)
如果以派生类的指针指向基类对象,则必须事先做明显的转型操作,但是这种做法很危险。
2、
include
template
void func(const int &t)
{
cout< } template void func(const T&t) { cout< } int main() { func(10.3); func(1000); return 0; } 程序运行结果: 10.3 1000 如果上述函数改为 include void func(const int &t) { cout< } template void func(const T&t) { cout< } int main() { func(10.3); func(1000); return 0; } 则程序的运行结果为: 10.3 1100 如果使用函数的非模板形式,不能在前面加上template关键字。 3、 改错: include class klass { public: klass(){} private: ~klass(){} void func(int n){ cout<<"klass!!"< } public: void test(){ func(100); } }; int main() { klass k; k.test(); return 0; } 运行后程序显示:error C2248: ’klass::~klass’ : cannot access private member declared in class ’klass’ 证明析构函数的属性必须为public。 但是,如果把klass k改为klass* pk; pk=new klass; pk->test();程序通过,但是klass不能释放 上一篇: Intel ICSC笔经 下一篇: 趋势科技笔经 相关文章 1趋势科技笔经 2趋势科技笔试归来 3NEC笔试挂了 4NEC电子笔试分享 5NEC笔试归来 6NEC笔试题型 7联想武大笔经 8联想笔经 9攒rp 发联想笔经 10联想(lenovo)笔试记 11今天去了明基笔试 12今天的benq笔试 热点文章 应聘算法工程师笔试题有哪些应答技巧 大数据时代,算法无处不在,互联网数据挖掘、关联推荐、临床医学 求职中为什么会有笔试? 首先来了解一个概念,求职中为什么会有笔试? 在企业针对应届生 应届生Python工程师笔试题攻略 Python近两年一直霸占编程语言排行榜Top3,火热程度有目共睹。而 平面设计师笔试题应答技巧 众所周知,平面设计是一个非常稳定且发展潜力较大的岗位,一般而 产品经理的笔试技巧有哪些 互联网作为近两年的热门行业,很多岗位都让人跃跃欲试,其中产品 职业能力笔试测验的准备方向 职业能力测验是指通过一些测试,来判断求职者的能力、性格等方面 笔试中到底有哪些内容,应该如何准备 不知道今年参加秋招的小伙伴们有没有意识到,秋招已经开始了! 2020国家能源笔试考情情况 2020国家能源校园招聘的笔试工作已在12月15日结束,不少学生怀揣
【使用锤子简历小程序制作简历】
零经验实习简历模板
21254人用过
学生求职简历模板
52754人用过
申请研究生简历模板
2324人用过
经典工作简历模板
6254人用过
投行咨询简历模板
12465人用过
产品经理简历模板
7532人用过
程序员简历模板
7457人用过
留学英文简历模板
4554人用过