НЕ ПРОИЗВОДИТСЯ ОТ STRING
std :: string, то есть практически весь шаблон basic_string не предназначен для использования в. Об этом уже написано миллионы статей. У него нет виртуальных функций, поэтому нечего переопределять. Лучшее, что вы можете сделать, это спрятать что-то. Лучше всего использовать композицию / агрегацию! То есть просто сохраните член типа string в своем классе и переадресуйте вызовы! Опять же, просто чтобы убедиться,
НЕ ПРОИЗВОДИТСЯ ОТ STRING