"Всегда нужно использовать std::string по строкам c-style (char *
)" - это совет, который подходит почти каждый исходный код размещен здесь. Хотя совет, без сомнения, хорош, актуальные вопросы, которые рассматриваются, не позволяют подробно рассмотреть аспект вопроса почему?. Этот вопрос должен служить в качестве заполнителя для того же самого.
Хороший ответ должен охватывать следующие аспекты (подробно):
- Зачем использовать
std::string
над строками c-style в С++? - Каковы недостатки (если таковые имеются) практики, упомянутой в
#1
? - Каковы сценарии, где противоположность рекомендаций, упомянутых в
#1
, является хорошей практикой?