Можно ли сделать ФРИЕНД класс шаблон, например:Templatize дружба в C++
template <class T>
class MyClass {
public:
friend class T;
};
Причина, почему я стремлюсь получить это, что я использую policy-based design, и я хочу, чтобы мои классы политики для доступа к членам хоста. (... теперь я начинаю думать, что это может означать, что мой дизайн просто плох ...)
Спасибо заранее, ребята!
Существует способ: использовать [CRTP] (http://en.wikipedia.org/wiki/Curiously_recurring_template_pattern) –
Если T и MyClass могут иметь общий базовый класс, я думаю, что CRTP - прекрасное решение! –
это [разрешено сейчас] (http://stackoverflow.com/questions/6510041/template-parameter-as-a-friend) – Lol4t0