Мне нужно создать архитектуру MVC, в которой классы View и Controller уже написаны в виде шаблонов следующим образом:
template<class Model, class View>
class Controller { /* Implement Controller */ };
template<class Model, class Controller>
class View { /* Implement View */ };
У меня также есть класс модели:
class Model { /* Implement Model */ };
Я не могу контролировать, как создаются классы Model, View и Controller. Теперь, как мне создать экземпляр контроллера или представления?
Чтобы лучше объяснить ситуацию, если я хочу создать контроллер, используя приведенные выше классы View и Model (мне НЕ разрешено использовать какие-либо другие классы), я получаю:
ПРИМЕЧАНИЕ. Далее следует недопустимый код C++.
Controller< Model, View< Model, // ad infinitum
тогда как следующее также неверно:
ПРИМЕЧАНИЕ. Далее следует недопустимый код C++.
Controller< Model, View< Model, Controller > > c;
Model
; и в шаблонах контроллера, и в шаблонах представления отсутствуют параметры шаблона, которые я Я почти уверен, что это будет иметь отношение к этому). - person WhozCraig   schedule 06.04.2014Controller<int,int> c; View<int, int> v; Model m;
. Не думайте, что это то, чего вы хотите. - person Jens   schedule 06.04.2014