ExpertiDict

C++ · Essencial · Inglês · Técnico

std string

ˌɛs.tiː.ˈdiː strɪŋsubstantivo

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.

Veja também

Todos os termos de C++