Czy powinienem zwrócić std :: strings?

Próbuję użyćstd::string zamiastchar* kiedy tylko jest to możliwe, ale obawiam się, że mogę za bardzo pogorszyć wydajność. Czy jest to dobry sposób na zwracanie ciągów znaków (brak błędów sprawdzania zwięzłości)?

<code>std::string linux_settings_provider::get_home_folder() {
    return std::string(getenv("HOME"));
}
</code>

Również powiązane pytanie: czy przyjmując ciągi jako parametry, powinienem je otrzymać jakoconst std::string& lubconst char*?

Dzięki.

questionAnswers(12)

yourAnswerToTheQuestion