C++ 中const修饰虚函数实例详解
来源:本站原创|时间:2022-11-25|栏目:ASP编程|
C++ 中const修饰虚函数实例详解
【1】程序1
#include <iostream> using namespace std; class Base { public: virtual void print() const = 0; }; class Test : public Base { public: void print(); }; void Test::print() { cout << "Test::print()" << endl; } void main() { // Base* pChild = new Test(); //compile error! // pChild->print(); }
【2】程序2
#include <iostream> using namespace std; class Base { public: virtual void print() const = 0; }; class Test : public Base { public: void print(); void print() const; }; void Test::print() { cout << "Test::print()" << endl; } void Test::print() const { cout << "Test::print() const" << endl; } void main() { Base* pChild = new Test(); pChild->print(); } /* Test::print() const */
【3】程序3
#include <iostream> using namespace std; class Base { public: virtual void print() const = 0; }; class Test : public Base { public: void print(); void print() const; }; void Test::print() { cout << "Test::print()" << endl; } void Test::print() const { cout << "Test::print() const" << endl; } void main() { Base* pChild = new Test(); pChild->print(); const Test obj; obj.print(); Test obj1; obj1.print(); Test* pOwn = new Test(); pOwn->print(); } /* Test::print() const Test::print() const Test::print() Test::print() */
备注:一切皆在代码中。
总结:const修饰成员函数,也属于函数重载的一种范畴。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
您可能感兴趣的文章
- 01-11解决ASP中http状态跳转返回错误页的问题
- 01-11ASP程序中常用的脚本语言
- 01-11ASP中用select case代替其他语言中的switch case, default用case else
- 01-11asp的SQL语句中and和or同时使用的注意事项
- 01-11ASP中if语句、select 、while循环的使用方法
- 01-11asp画中画广告插入在每篇文章中的实现方法
- 01-11ASP中解决“对象关闭时,不允许操作。”的诡异问题……
- 01-11C++中头文件和源文件详细介绍
- 01-11详解ABP框架中的日志管理和设置管理的基本配置
- 01-11C++ 中引用与指针的区别实例详解