приветствую!
есть шаблонный класс на подобие этого:
template<typename IO>
struct type: IO {
type(IO &io)
:IO(io)
{}
};
т.е. type наследует шаблонный параметр IO — это то, что хотелось бы получить.
загвоздка в том, что классы которые предполагается использовать в качестве параметра IO — некопируемые.
вторая загвоздка в том, что от параметра IO мне хотелось бы унаследовать только методы, но не данные.
т.е. вот что хотелось бы видеть:
struct ostream {
ostream(ostream&) = delete;
size_t write(const void *ptr, const size_t size) {}
};
template<typename IO>
struct type: IO {
type(IO &io)
{}
};
// использование:
ostream os;
type<ostream> t(os);
t.write(...);
идеи?
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)