Констреф для строки или же move из нее (второе сейчас более идиоматично).
Вызов конструктора из конструктора так не работает, ты фигню делаешь. Просто создаешь локальный объект, который тут же удаляется. Это через список инициализации вызывается, а не в теле конструктора.
Удалять дефолтный конструктор необязательно, он сам удалится, как только ты задаешь кторы с параметрами.
Но вообще ты бы лучше в
@supapro шел, там тебе больше людей поможет