Здравствуйте, _Winnie, Вы писали:
_W>>>PS. Наверное, я не прочитал какую-то книжку. Но протелепатировал себе мысль из неё 
...
>> что наследование — 2-ая по силе зависимость в C++.
_W>Ну, жуть. Расширенный стринг зависит от стандартного. Афигеть.
У стандартной строки стандартный только интерфейс, но не реализация.
Я могу привести пример, когда это будет "афигеть". Если ты пишешь статическую/динамическую библиотеку и твой стринг попадает во внешний интерфейс библиотеки. Библиотека собрана и используется. Потом появляется у этой библиотеки клиент, который собран с обновленной версией std::string...
Если от зависимости избавиться, то проблем не будет.
В данном же случае, даже если ты и захочешь уменьшить зависимость, то если extern для шаблонов не работает (а в той книжке написано, что он вероятнее всего не работает), то придется извращаться: хранить указатель на string + forward typedef declaration.
_W>Можно конкретней, где такое наследование выйдет боком? А не общие слова.
"общие слова" — это попытка записать ту мысль, которую ты "протелепатировал", но не смог сформулировать.