Перегрузка в C++ не требует обязательной перегрузки всех версийПример :
visit, также не нужно отказываться от перегрузки конкретного члена
visit. Наряду с поддержкой концепций пространства имен, декларация
using позволяет вводить имена из базового класса в текущий класс
для перегрузки
class Ctest
{
public :
void test ( float ) {}
void test ( char ) {}
void test ( int ) {}
};
class Ctest1: public Ctest
{
public:
using Ctest::test;
void test ( char* v ) {}
};
int main() {
Ctest1 obj;
obj.test ( 12.3 );
return 0;
}
И все работает без ошибок!
Если убрать using обьявление void test в Ctest1 скроет унаследованные test.
Комментариев нет:
Отправить комментарий