0Pricing
C++ Academy · Aula

Criação de visualizações

Crie visualizações sobre strings

Criação de visualizações é uma aula grátis de C++ Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de C++ Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de C++ Academy inclui 4 aulas no total.

De um Literal de Texto

A visão mais simples vem de um literal de texto. O comprimento é calculado automaticamente.

#include <iostream>
#include <string_view>
int main() {
    std::string_view sv = "automatic length";
    std::cout << sv.size() << "\n";
}

De uma std::string

Uma std::string é convertida implicitamente em uma visão, permitindo observar seu conteúdo sem copiá-lo.

#include <iostream>
#include <string>
#include <string_view>
int main() {
    std::string s = "owned text";
    std::string_view sv = s;
    std::cout << sv << "\n";
}

De um Ponteiro e um Comprimento

Você pode criar uma visão a partir de um ponteiro para caracteres e de um comprimento explícito, o que é útil para áreas de memória que não terminam em nulo.

#include <iostream>
#include <string_view>
int main() {
    const char buf[] = {'H','e','l','l','o','!'};
    std::string_view sv(buf, 5);
    std::cout << sv << "\n"; // Hello
}

O Sufixo Literal sv

O sufixo sv, de std::string_view_literals, cria uma visão diretamente e trata corretamente caracteres nulos incorporados.

#include <iostream>
#include <string_view>
using namespace std::string_view_literals;
int main() {
    auto sv = "ready"sv;
    std::cout << sv.size() << "\n";
}

Fatiando com substr

substr(pos, count) retorna uma nova visão para a mesma área de memória, uma forma gratuita de observar parte do texto.

#include <iostream>
#include <string_view>
int main() {
    std::string_view sv = "2026-05-30";
    std::cout << sv.substr(0, 4) << "\n"; // 2026
}

remove_prefix

remove_prefix(n) reduz a visão pela frente, avançando o ponteiro inicial, sem fazer nenhuma cópia.

#include <iostream>
#include <string_view>
int main() {
    std::string_view sv = "   trimmed";
    sv.remove_prefix(3);
    std::cout << sv << "\n"; // trimmed
}

remove_suffix

remove_suffix(n) reduz a visão por trás, diminuindo seu comprimento.

#include <iostream>
#include <string_view>
int main() {
    std::string_view sv = "data.csv";
    sv.remove_suffix(4);
    std::cout << sv << "\n"; // data
}

Visões Vazias

Uma visão criada por padrão é vazia; empty() informa verdadeiro e size() é zero.

#include <iostream>
#include <string_view>
int main() {
    std::string_view sv;
    std::cout << sv.empty() << " " << sv.size() << "\n";
}

Copiar uma Visão é Barato

Atribuir uma visão a outra copia apenas o ponteiro e o comprimento; ambas continuam se referindo aos mesmos caracteres.

#include <iostream>
#include <string_view>
int main() {
    std::string_view a = "shared";
    std::string_view b = a;
    b.remove_prefix(3);
    std::cout << a << " " << b << "\n"; // shared red
}

Convertendo de Volta para string

Quando precisar ser proprietário dos dados, crie uma std::string a partir da visão; é nesse momento que ocorre uma cópia, de forma intencional.

#include <iostream>
#include <string>
#include <string_view>
int main() {
    std::string_view sv = "copy me";
    std::string owned{sv};
    std::cout << owned << "\n";
}

Escolhendo um Método de Construção

Use literais e conversão implícita nos casos comuns, a forma com ponteiro e comprimento para áreas de memória brutas e substr/remove_* para redimensionar a visão sem alocar memória.

Verificação Rápida

Verifique sua compreensão sobre como criar visões.

Recapitulação

Você aprendeu a criar visões:

  • A partir de literais, strings ou de um ponteiro e um comprimento.
  • O sufixo sv cria visões diretamente.
  • substr, remove_prefix e remove_suffix permitem redimensionar a visão sem alocar memória.
  • Crie uma std::string quando precisar ser proprietário dos dados.

Perguntas Frequentes

A aula “Criação de visualizações” é grátis?

Sim — o texto completo de “Criação de visualizações” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de C++ Academy, atualize para CoddyKit PRO. O curso de C++ Academy inclui 4 aulas no total.

O que vou aprender em “Criação de visualizações”?

Crie visualizações sobre strings Você pratica C++ Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar C++ Academy?

Nenhuma experiência prévia é necessária. C++ Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.

Quanto tempo leva a aula “Criação de visualizações”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de C++ Academy?

Sim. Cada aula de C++ Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Por que usar string_view
  2. Criação de visualizações
  3. Armadilhas e tempos de vida
  4. Algoritmos de strings
← Voltar para C++ Academy