成员函数可以重载吗?
导读:收集整理的这篇文章主要介绍了成员函数可以重载吗?,觉得挺不错的,现在分享给大家,也给大家做个参考。成员函数可以重载;但成员函数只能重载本类的其他成员函数。类的成员函数与普通的非成员函数以及在其他类中声明的函数不相关,也不能重载它们。成员函数...
收集整理的这篇文章主要介绍了成员函数可以重载吗?,觉得挺不错的,现在分享给大家,也给大家做个参考。成员函数可以重载;但成员函数只能重载本类的其他成员函数。类的成员函数与普通的非成员函数以及在其他类中声明的函数不相关,也不能重载它们。
成员函数可被重载
成员函数只能重载本类的其他成员函数。类的成员函数与普通的非成员函数以及在其他类中声明的函数不相关,也不能重载它们。重载的成员函数和普通函数应用相同的规则:两个重载成员的形参数量和类型不能完全相同。调用非成员重载函数所用到的函数匹配过程也应用于重载成员函数的调用。
定义重载成员函数
为了举例说明重载,可以给出 Screen 类的两个重载成员,用于从窗口返回一个特定字符。两个重载成员中,一个版本返回由当前光标指示的字符,另一个返回指定行列处的字符:
class Screen { public:tyPEdef std::string::size_type index; // return character at the cursor or at a given posITionchar get() const { return contents[cursor]; } char get(index ht, index wd) const; // remaining membersPRivate:std::string contents; index cursor; index height, width; } ;
与任意的重载函数一样,给指定的函数调用提供适当数目和类型的实参来选择运行哪个版本:
Screen myscreen; char ch = myscreen.get(); // calls Screen::get()ch = myscreen.get(0,0); // calls Screen::get(index, index)
推荐教程:《c++视频教程》
以上就是成员函数可以重载吗?的详细内容,更多请关注其它相关文章!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 成员函数可以重载吗?
本文地址: https://pptw.com/jishu/594637.html