Наследование конкретного конструктора | C++

Можно ли унаследовать конкретный конструктор при помощи using декларации? Мы можем сделать следующее при наследовании:

using myclass::myclass;

Но в таком случае будут наследованы все конструкторы, можно ли, например, унаследовать только конструктор копирования или для этого придется явно написать каждый в наследуемом классе?


Ответы (1 шт):

Автор решения: Eoan Ermine

Нет, унаследовать конкретные конструкторы с помощью using-декларации невозможно: [namespace.udecl] не описывает такого синтаксиса. Лишь все вместе.

Если вам нужно унаследовать лишь конкретные конструкторы - вам придется написать каждый требуемый вам конструктор и в нем произвести вызов конструктора базового класса, пользуясь делегирующим конструктором.

→ Ссылка