Могу ли я использовать виртуальный метод, определенный в классе шаблона, внутри другого метода? - PullRequest
0 голосов
/ 31 марта 2019
  • У меня есть шаблонный класс, который имеет два метода, один виртуальный и один обычный.
  • Обычный вызывает виртуальный.
  • Реализация шаблона шаблона всегда переопределяет виртуальный метод.
  • Кажется, проблема в том, что при создании класса из шаблона ... вызов get_data () ... приводит к сбою программы.
  • Я чувствую, что, хотя я переопределяю метод, он все еще содержит 'nullptr', что я делаю неправильно?
virtual M *get_map() const { return nullptr; };

int get_data() const {
    return (*get_map())[_data_owner].data;
}

1 Ответ

0 голосов
/ 01 апреля 2019

Мне кажется, мне нужно было добавить ключевое слово "override" при переопределении метода.Хотя я и читал, что это не нужно, в моем случае мне нужно было добавить его, чтобы оно работало.Все работает хорошо, извините за не столь документированный пост

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...