Вопросы по теме 'name-hiding'
Путаница в отношении сокрытия имен и виртуальных функций
Ссылаясь на другой вопрос
Рассмотрим код:
class Base {
public:
virtual void gogo(int a){
printf(" Base :: gogo (int) \n");
};
virtual void gogo(int* a){
printf(" Base :: gogo (int*) \n");
};
};
class Derived...
2828 просмотров
schedule
25.04.2024
Путаница с виртуальными функциями и производными классами
Я пытаюсь понять следующий фрагмент кода:
#include<iostream>
using namespace std;
class Base {
public:
virtual void f(float) { cout << "Base::f(float)\n"; }
};
class Derived : public Base {
public:
virtual void...
1594 просмотров
schedule
19.04.2023
Почему компилятор С++ (VS2013) выбирает неправильную функцию?
Первый случай
#include <iostream>
class A
{
public:
virtual void Write(int i)
{
std::wcout << L"Write(int) is called" << std::endl;
}
virtual void Write(wchar_t c)
{
std::wcout <<...
96 просмотров
schedule
03.12.2022
С++ с использованием объявления для пакета параметров
Я хотел бы определить класс, который наследуется от группы классов, но не скрывает некоторые конкретные методы этих классов.
Представьте себе следующий код:
template<typename... Bases>
class SomeClass : public Bases...
{
public:
using...
390 просмотров
schedule
06.09.2022
Функция Variadic Overloading и SFINAE — устранение неоднозначности для имитации скрытия по подписи
Я хотел бы скрыть по подписи, а не по имени в С++. Поэтому я написал макрос, который определяет функцию с переменным числом аргументов, которая делегирует все вызовы своему базовому классу, если они существуют. Я не могу использовать объявление...
120 просмотров
schedule
04.01.2024