按返回类型过载我在这里读到了几个关于这个话题的问题,但这似乎让我感到困惑。我刚刚开始学习C+,我还没有学习模板或操作符重载等等。现在有一个简单的方法来超载吗?class My {public:
int get(int);
char get(int);}没有模板或奇怪的行为?还是我应该class My {public:
int get_int(int);
char get_char(int);}?
3 回答
白猪掌柜的
TA贡献1893条经验 获得超10个赞
函数名 简历-修饰符 参数类型
1.3.11签字
参与过载解析(13.3)的函数的信息:它的参数类型列表(8.3.5),如果函数是类成员,则函数本身和声明成员函数的类的cv-限定符(如果有的话)。[.]
备选方案:
class My {public: int getInt(int); char getChar(int);};
class My {public: void get(int, int&); void get(int, char&);}
神不在的星期二
TA贡献1963条经验 获得超6个赞
getChar
getInt
get()
class Proxy{ My const* myOwner;public: Proxy( My const* owner ) : myOwner( owner ) {} operator int() const { return myOwner->getInt(); } operator char() const { return myOwner->getChar(); }};
泛舟湖上清波郎朗
TA贡献1818条经验 获得超3个赞
void get(int, int&);void get(int, char&);
- 3 回答
- 0 关注
- 434 浏览
添加回答
举报
0/150
提交
取消