如何调用与另一个同名的成员函数?

时间:2014-11-16 04:44:36

标签: c++ function member

我需要两个具有相同名称的成员函数" functionName"在className类中。像这样......

className::functionName(BaseClass &object)
{
    //do something here with object
}
className::functionName(SecondBaseClass &object2)
{
    //do something here with object2
}

所以,如果我有两个同名的函数,我该如何调用我想要的函数?

1 个答案:

答案 0 :(得分:1)

这称为函数重载。它根据参数的类型选择一个,但如果要传递的参数可以合理地转换为多个重载,它将无法编译。

如果您的参数是从两个基类派生的,请尝试以下方法消除歧义

functionName(static_cast<DesiredBase&>(myobject));