C++使用虚函数的时候,子类也要使用virtual关键字吗
2015-05-12 15:57
465 查看
父类使用虚函数是为了让子类重写,那子类重写的时候也需要带virtual关键字吗?比如:
class Base{
virtual bool init();
};
class Derived{
virtual bool init(); //这里的vitual是必须的吗?好像不用也能编译通过呃…..
};
c++规定,当一个成员函数被声明为虚函数后,其派生类中的同名函数都自动成为虚函数。因此,在子类从新声明该虚函数时,可以加,也可以不加,但习惯上每一层声明函数时都加virtual,使程序更加清晰。
class Base{
virtual bool init();
};
class Derived{
virtual bool init(); //这里的vitual是必须的吗?好像不用也能编译通过呃…..
};
c++规定,当一个成员函数被声明为虚函数后,其派生类中的同名函数都自动成为虚函数。因此,在子类从新声明该虚函数时,可以加,也可以不加,但习惯上每一层声明函数时都加virtual,使程序更加清晰。
相关文章推荐
- C++父类定义虚函数其派生类的同名函数使用virtual关键字吗?
- C#多态;父类引用指向子类对象;new和override的区别;new、abstract、virtual、override,sealed关键字区别和使用代码示例;c#类的初始化顺序
- c++中父类的静态成员变量/函数在子类中的使用
- C++子类继承基类时virtual关键字的作用
- [C++]virtual关键字:虚函数,虚继承和虚基类
- 从汇编看c++中函数里面的static关键字的使用说明
- C++动态绑定和模板的简单配合使用(virtual关键字)
- C++父类子类中虚函数的使用
- 为什么在C++使用pthread_create()的时候,类成员函数做线程的处理函数必须要定义成static类型的?
- 虚函数中virtual关键字的使用问题
- 为什么在C++使用pthread_create()的时候,类成员函数做线程的处理函数必须要定义成static类型的?
- C++ virtual函数重写,在继承的时候没有在函数前写virtual关键字也依然是虚函数吗?
- 不使用virtual关键字实现C++多态
- C++中的virtual关键字---补充(1)《Effective C++》
- C++静态成员变量和静态成员函数的使用方法总结
- 使用C和C++标准函数忽略大小写比较字符串
- C++ 虚函数使用注意
- 关于C++里面使用set_union,set_intersection等函数的使用总结
- oracle 分析函数中 keep关键字的使用
- C++关于类成员函数在参数列表后加const的作用,以及使用条件