@Ensiouel

Как сделать «переопределение» функции в c++?

Доброго времени суток, сразу прошу тапками не кидаться.
Предположим у меня есть какой нибудь класс Enemy, у которого есть функция update, как мне сделать так, чтоб можно было ее "переопределить", знаю, что термин не особо верен, надеюсь с примерным кодом будет понятнее.

#include <iostream>
class Enemy {
    public:
    void update() {
    }
}
int main(int argc, char* argv[]) {
    Enemy enemy;
    /*И тут к примеру как нибудь так*/
    enemy::update() {
        std::cout << "Hello";
    }
    return 0;
}
  • Вопрос задан
  • 165 просмотров
Решения вопроса 1
@MarkusD Куратор тега C++
все время мелю чепуху :)
Твой вопрос можно решить таким способом.
#include <iostream>
#include <functional>

class Enemy final
{
public:
	std::function<void()> update = []() {};
};

int main( int argc, char* argv[] )
{
	Enemy enemy;
	enemy.update = []() { std::cout << "Hello"; };

	enemy.update();
	return 0;
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
CTRL+ Москва
от 250 000 до 320 000 ₽
CTRL+ Москва
от 200 000 до 300 000 ₽
CTRL+ Белград
от 250 000 до 320 000 ₽
22 нояб. 2024, в 00:55
500 руб./за проект
21 нояб. 2024, в 23:30
300000 руб./за проект
21 нояб. 2024, в 22:21
3000 руб./в час