Пример:
template<class T>
class Base {
public:
Base();
friend class T;
};
Теперь это не работает... Есть ли способ сделать это?
Я на самом деле пытаюсь сделать общий герметик класса следующим образом:
class ClassSealer {
private:
friend class Sealed;
ClassSealer() {}
};
class Sealed : private virtual ClassSealer
{
// ...
};
class FailsToDerive : public Sealed
{
// Cannot be instantiated
};
Я нашел этот пример на этом сайте, но я не могу его найти... (здесь)
Я знаю, что есть другие способы, но сейчас мне интересно, действительно ли вы можете сделать что-то вроде этого.