Как вызвать реализацию интерфейса в c ++ из другого класса? - PullRequest
0 голосов
/ 25 сентября 2019

У меня есть абстрактный класс, скажем, A, который содержит чисто виртуальную функцию с защищенным спецификатором доступа.Другой класс, скажем, B, переопределяет интерфейс и реализует функцию List ().

class A {
 public:
  ...
 protected:
  virtual std::vector<std::string> List() = 0;
}
class B: public A {
 protected:
  std::vector<std::string> List() override {
   //Implementation for the method
  }
}

Мой вопрос заключается в том, что теперь у меня есть другой класс, C, который должен вызывать реализованный интерфейс List ()из класса B, чтобы я мог сохранить возвращенный результат в классе C. Как я могу вызвать интерфейс в классе C?

PS: я могу изменить спецификатор доступа метода на public в классе B, если это можетрешить проблему.

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