Сообщение Re[3]: variadic list неспециализированных шаблонов от 20.09.2014 22:30
Изменено 20.09.2014 22:32 wander
Здравствуйте, niXman, Вы писали:
X>если таки не получится разобраться — выложу компилябильный код. просто прототипирую некоторую архитектуру, о которой скоро на хабре будет статья, потому и не хочу "раскрывать всех карт"
Может я конечно опять не так понял (плоховато уже соображаю), но вот так не пойдет?
X>
X>если таки не получится разобраться — выложу компилябильный код. просто прототипирую некоторую архитектуру, о которой скоро на хабре будет статья, потому и не хочу "раскрывать всех карт"
Может я конечно опять не так понял (плоховато уже соображаю), но вот так не пойдет?
X>
X>template<template<typename> class ...>
X>struct invokers;
X>template<typename...>
X>struct services;
X>template<
X> typename UC
X> ,template<typename> class GC
X> ,typename Invokers
X> ,typename Services
>>
X>struct server;
X>template<
X> typename UC
X> ,template<typename> class GC
X> ,template<typename> class... Invokers
X> ,typename... Services
>>
X>struct server<UC, GC, invokers<Invokers...>, services<Services...>> {
X> server(GC<UC> &gc)
X> :gc(gc)
X> {}
X> void start() {
X> auto ptr = std::make_shared<session<invokers<Invokers...>, services<Services...>>>();
ptr->>invoke(1, "my string");
X> }
X>private:
X> GC<UC> &gc;
X>};
X>
Здравствуйте, niXman, Вы писали:
X>если таки не получится разобраться — выложу компилябильный код. просто прототипирую некоторую архитектуру, о которой скоро на хабре будет статья, потому и не хочу "раскрывать всех карт"
Может я конечно опять не так понял (плоховато уже соображаю), но вот так не пойдет?
X>если таки не получится разобраться — выложу компилябильный код. просто прототипирую некоторую архитектуру, о которой скоро на хабре будет статья, потому и не хочу "раскрывать всех карт"
Может я конечно опять не так понял (плоховато уже соображаю), но вот так не пойдет?
template<template<typename> class ...>
struct invokers;
template<typename...>
struct services;
template<
typename UC
,template<typename> class GC
,typename Invokers
,typename Services
>
struct server;
template<
typename UC
,template<typename> class GC
,template<typename> class... Invokers
,typename... Services
>
struct server<UC, GC, invokers<Invokers...>, services<Services...>> {
server(GC<UC> &gc)
:gc(gc)
{}
> void start() {
auto ptr = std::make_shared<session<invokers<Invokers...>, services<Services...>>>();
ptr->invoke(1, "my string");
}
private:
GC<UC> &gc;
};