C++基类的继承和多态
虚函数:
子类的虚函数会覆盖基类同名的函数。
非虚函数:
指针声明是什么类型,就只能访问该类所拥有的函数。。
要特别注意指针声明成什么类型。。。。和它 new 的类型无关。。。无关。。
class Base
{
public:
Base(){};
~Base(){};
public:
virtual void printHello()
{
cout << "Base: Base say hello"<<endl;
}
void printName()
{
cout << "Base: I am Base" << endl;
}
void printDate()
{
cout << "Base: Base 6666" << endl;
}
};
class Drive : public Base
{
public:
Drive(){};
~Drive(){};
public:
virtual void printHello()
{
cout << "Drive: Drive say hello" << endl;
}
void printName()
{
cout << "Drive: I am Drive" << endl;
}
void printAge()
{
cout << "Drive: Age 29" << endl;
}
};
int main(int argc, char* argv[])
{
//Test1();
//Test2();
//Test3();
//Test4();
//Test5();
//Test6();
//Test7();
Base* objB1 = new Drive();
objB1->printHello();
objB1->printName();
objB1->printDate();
// objB1->printAge(); //编译器会报错
///输出结果如下:
// Drive: Drive say hello
// Base : I am Base
// Base : Base 6666
cout << endl;
system("pause");
return 0;
}
原文链接: https://www.cnblogs.com/music-liang/p/12726786.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/196172
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!