Форум программистов, компьютерный форум, киберфорум
Наши страницы

Перегрузка внутри класса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как разделить участки кода в одном исходнике для разных битовых систем http://www.cyberforum.ru/cpp-beginners/thread1795956.html
В проекте нужно разделить участки программы примерно таким образом, как показано псевдокодом if (сборка выполняется для х64) компилируется эта часть программы; else if (сборка выполняется для...
C++ Шаблон функции для подсчета значений в массиве Всем доброго времени суток. Очень прошу помочь написать программу. Нужно создать шаблон функции count() для подсчета числа появлений некоторого значения в массиве. В основной программе передайте в... http://www.cyberforum.ru/cpp-beginners/thread1795927.html
C++ Форматирование вывода и округление double
Доброго времени суток. Я много подобных тем полистал. Но не нашел ответа. Мне нужно написать функцию, которая бы получала double число, округляла его до сотых(потом идет вывод данного числа, те...
C++ Передача по ссылке и по значению
Эта тема стара как мир, но я хотел уточнить одну вещь. QBluetoothAddress* address = new QBluetoothAddress("00:1A:7D:DA:71:15"); void try_connect_to_local_address(QBluetoothAddress &address); ...
C++ Отловить русские буквы с помощью библиотечной функции http://www.cyberforum.ru/cpp-beginners/thread1795908.html
Через _gettch() отлавливаю код вводимой буквы.Ввод произвожу на русской раскладке.При нажатии буквы "п" отлавливает код "63" и пишет что соответствует этому коду знак "?". Пробовал делать следующее:...
C++ Наследование классов в раздельных файлах Здравствуйте! Вопрос: Реализовал .h и .cpp файлы для класса односвязного списка. Затем создал унаследованный от этого класса класс для двусвязного списка. Оба класса реализованы в отдельных файлах... подробнее

Показать сообщение отдельно
DrOffset
7517 / 4513 / 1025
Регистрация: 30.01.2014
Сообщений: 7,362
19.08.2016, 18:45
Цитата Сообщение от dailydose Посмотреть сообщение
отталкиваться я так понимаю от #post9469543, да ?
Да.
Если есть какая-то логика, перенеся которую из Game, мы нарушим инкапсуляцию, то можно воспользоваться диспетчеризацией, и вернуть управление в функцию Game, но уже с конкретным типом. Например так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class Game
{
public:
    template <typename T>
    void doSomething(Point<T> & point)
    {
        // тут уже можно звать геттер у point
    }
//...........
    void doSomethingAbstract()
    {
        pBase->doSomething(*this); 
        // вызовется
        // virtual void doSomething(Game & gameobj) { gameobj.doSomething(*this); } 
        // далее в шаблонную функцию Game::doSomething<T>(Point<T> &)
    }
private:
    PointBase * pBase; 
};
Смотри, короче, по обстоятельствам.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru