Как сделать существующий класс некопируемым и неназначаемым с помощью шаблона без наследования? [закрыто]C++

Программы на C++. Форум разработчиков
Anonymous
 Как сделать существующий класс некопируемым и неназначаемым с помощью шаблона без наследования? [закрыто]

Сообщение Anonymous »

Я хотел бы создать шаблон, который берет существующий класс и делает его некопируемым и неназначаемым, но без использования наследования. Например, рассмотрим std::vector. Я хотел бы применить шаблон NonCopyable таким образом, чтобы std::vector стал некопируемым.
Вот упрощенная версия того, к чему я стремлюсь:

Код: Выделить всё

NonCopyable vec1{1, 2, 3};
NonCopyable vec2(vec1);    // should not compile
vec2 = vec1;                                 // should not compile
Какой шаблонный подход будет подходящим для достижения такого поведения, если предположить, что я не могу изменить исходный класс и не хочу использовать наследование?
Изменить
Возможно, я не понял: шаблон может использовать внутреннее наследование.

Подробнее здесь: https://stackoverflow.com/questions/790 ... template-w

Вернуться в «C++»