Literais de cordas multilinas C ++

Literais de cordas multilinas C ++
A abordagem mais eficiente para exibir inúmeras instruções de string de maneira estruturada e eficiente é com uma corda multilina C ++. Quando temos uma corda longa, isso pode ser útil. Não é bom manter esse texto em uma única linha. Afeta a legibilidade do código.

Muitas metodologias podem ser utilizadas para construir strings multilinas C ++, que serão discutidas neste artigo. Ao encerrar uma string nas citações, podemos dividi -la em muitas linhas. Suportes podem ser usados ​​para dividir uma corda em inúmeras linhas. Além disso, o caractere de barra de barragem em C ++ é usado para continuar uma linha. Vamos explorar cada método com mais detalhes. Além das explicações de cada método, incluímos exemplos.

Exemplo 1: Usando literais de cordas para string multilina em c++

Se dois ou mais literais de cordas forem adjacentes, o C ++ permite concatenação implícita de string, o que permite ao compilador conectá -los. Em C ++, podemos usar concatenação implícita para fazer uma corda multilina literal, como visto abaixo:

Temos a implementação de string multilina no programa a seguir. O programa incluiu as bibliotecas na fase inicial. A string deve ser incluída para acessar a funcionalidade da string no programa. Lá a principal função do programa é chamada. No bloco da função principal, temos a classe String padrão "std :: string", dado o nome "multilinestring". A corda multilina tem três literais de cordas separados em três linhas.

O conteúdo da string está nas citações duplas que representam que é uma string. Portanto, esses literais de cordas estão próximos, o compilador C ++ os concatenará. Os literais de corda multilina serão impressos na sequência de saída.

#incluir
#incluir
int main ()

std :: string multilinestring =
"Issac Newton"
"fez sua descoberta de gravidade"
"Depois de ver uma maçã cair da árvore.";
std :: cout<< "Multiline String:"<retornar 0;

Na imagem a seguir, os literais de cordas multilinas são concatenados juntos e representados como uma única corda.

Exemplo2: Usando o caractere de barragem para sequência multilina em c++

O compilador elimina a nova linha e o caractere de barragem anterior ao usar um caractere de barra de barragem no final de uma linha. É assim que a corda multilina é criada. Em contraste com o método anterior, o recuo é importante aqui.

Vamos começar a demonstração do programa. Primeiro, temos bibliotecas C ++, conforme necessário para o programa. Depois disso, há uma declaração de string na função principal INT. Usamos a representação de string de classe padrão e definimos uma string chamada "backslashstring". Os literais de string usam o símbolo de barragem “\” para se juntar aos literais de cordas multilinas.

Observe que cada string literal inclui uma barra de barriga. O espaço no início do literal de cordas é mantido aqui no programa. O recuo é muito importante ao usar símbolos de barra de barriga no final de cada string literal. Em seguida, a classe Cout padrão está sendo chamada para exibir a corda multilina que usa o símbolo de barragem.

#incluir
#incluir
int main ()

std :: string backslashString = "Não pare \
Até que você esteja \
orgulhoso para si mesmo.";
std :: cout<retornar 0;

A saída do uso de uma barra de barriga no final da string literal é impressa na compilação do código acima.

Exemplo 3: Utilizando literais de cordas cruas

A corda crua literal é a melhor maneira de criar uma corda multilina literal. Este método é direto e eficiente; No entanto, ele só funciona com C++. É importante observar que a string mantém todos os espaços, novas linhas e recua.

O programa abaixo importou os arquivos do cabeçalho, pois é uma etapa inicial de cada programa C ++. Na próxima etapa, temos a principal função para a execução do programa. No corpo da função principal, chamamos a classe de string padrão de "std :: string" para declarar a string. A string é declarada como "mystring" e a string contém a representação bruta da corda multilina.

Usamos a palavra -chave "R" para literais de cordas cruas, depois embrulhamos as cordas multilinas literais nas citações duplas e passamos para os suportes redondos. O importante dos literais de cordas cruas é que todos os espaços de brancos, novas linhas de literais de cordas e indentação são preservados aqui. A corda multilina será impressa após a representação literal de cordas cruas.

#incluir
#incluir
int main ()

std :: string myString = r "(você enfrentará muitos
derrotas na vida, mas nunca
deixe -se ser derrotado).";
std :: cout<<"Multiline String Literals:"<retornar 0;

Como você pode ver, a corda multilina é mostrada como a saída do programa acima. Além disso, a nova linha e o indentação são retidos pela liteal de cordas cruas.

Exemplo 4: Usando macros

Por fim, com C ++, podemos gerar uma corda multilina usando macros. Nesse caso, o recuo é irrelevante, e o método substitui um único espaço por vários caracteres de espaço em branco.

A macro é usada para especificar qualquer valor ou variável constante com seu valor em todo o programa que será substituído por um nome macro, onde a macro compreende a seção de código que será acionada quando o nome da macro for usado.

No arquivo de cabeçalho, definimos uma macro como "multiline_string" e passamos a variável "s" como o parâmetro e usamos essa variável "s" com o processador de hashtag. Agora estamos na função principal do programa, que tem um nome de string "stringis" especificado nele. A string usou o nome das macros "multiline_string" e armazenamos a corda literal nas macros. A representação de macros de literais de cordas multilinas será impressa no tempo de compilação do programa.

#incluir
#incluir
#Define multiline_string (s) #s
int main ()

std :: string stringis = multiline_string (programação são habilidades
melhor adquirido pela prática
e exemplo em vez de
de livros.);
std :: cout<< "Multiline String Literals: " <retornar 0;

A saída da utilização de macros para expressar strings multilinas é exibida na figura abaixo.

Conclusão

A representação de string multiline é usada principalmente para comentar algo no código. Se quisermos usar a multilina usada como uma string no código e será executada, depois a inclua na representação da string. Discutimos várias metodologias para a sequência multilina usada em C ++ com os programas de exemplo em execução. Examinar cada uma das abordagens; Eles são simples de compreender e implementar em C++.