这篇文章主要介绍C++中虚函数的用法示例,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
虚函数的使用和纯虚函数的使用。
虚函数是在基类定义,然后子类重写这个函数后,基类的指针指向子类的对象,可以调用这个函数,这个函数同时保留这子类重写的功能。
纯虚函数是可以不用在基类定义,只需要声明就可以了,然后因为是纯虚函数,是不能产生基类的对象,但是可以产生基类的指针。
纯虚函数和虚函数最主要的区别在于,纯虚函数所在的基类是不能产生对象的,而虚函数的基类是可以产生对象的。
// pointers to base class #include <iostream> using namespace std; class Polygon { protected: int width, height; public: void set_values (int a, int b) { width=a; height=b; } virtual int area(){ return 0; } }; class Rectangle: public Polygon { public: int area() { return width*height; } }; class Triangle: public Polygon { public: int area() { return width*height/2; } }; int main(){ Polygon *p1,*p2; Rectangle rec; Triangle tri; p1 = &rec; p2 = &tri; p1->set_values(1,2); p2->set_values(2,4); cout << rec.area() << endl; cout << tri.area() << endl; cout << p1->area() << endl; cout << p2->area() << endl; return 0; }
以上是“C++中虚函数的用法示例”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。