C++ · Essencial · Inglês · Técnico
std string
Classe que guarda texto de tamanho variável e gerencia a própria memória. Oferece concatenação com +, busca, substrings e comparação com ==, ao contrário de char* do C.
Onde usar
Em quase todo código de aplicação, texto é std::string. Em code review, discute-se passar por const std::string& ou, desde o C++17, por std::string_view.
Em código
std::string s = "ola";
s += ", mundo";
if (s.find("mundo") != std::string::npos) {
s.append("!");
}Exemplos
Pass it as a string view, you don't need to copy the std string.
Passe como string view, não precisa copiar a std string.
Adding two string literals with plus doesn't compile.
Somar dois literais de string com mais não compila.
Cuidado
Um literal como "abc" é const char[4], não std::string, então somar dois literais com + não compila.