继承时候相同函数名 不能重载么
struct base {
void set(int, char){}
};
struct derive : base {
void set(int, int, long) {} //定义了这个,父类的set就没了? 不能像普通函数那样重载么
};
int main() {
derive d;
d.set(2,'a');
}
[解决办法]
derive d;
d.base::set(2,'a');
基类同名函数被“隐藏”了。
[解决办法]
只能曲线求国了
struct base {
void set(int, char){}
};
struct derive : base {
void set(int, int, long) {} //定义了这个,父类的set就没了? 不能像普通函数那样重载么
void set(int, char){
base::set(int,char);
}
};
int main() {
derive d;
d.set(2,'a');
}