Construa funções e passe por referência
Dê um nome ao trabalho, devolva resultados e evite cópias desnecessárias.
- Declarar funções e diferenciar parâmetros por valor, por referência e por referência const.
As funções empacotam um comportamento reutilizável atrás de um nome e de uma lista de parâmetros. Uma função pode devolver um valor ou usar void quando não devolve nada. Passar um argumento por valor faz uma cópia; passar por referência com & permite que a função se refira ao objeto de quem chamou. Acrescente const a uma referência quando a função deve ler sem modificar. Uma referência const é eficiente para entradas grandes, enquanto um inteiro pequeno costuma ser claro e barato por valor.
1#include <iostream>
2#include <string>
3
4void greet(const std::string& name) {
5 std::cout << "Hello, " << name << "!\n";
6}
7
8int main() {
9 greet("Ada");
10}Hello, Ada!
A declaração precisa estar visível antes de uma chamada, seja por meio de uma declaração anterior da função, seja por uma definição colocada antes. Em C++ moderno, prefira referências e tipos da biblioteca padrão a parâmetros com ponteiros manuais quando não for preciso um comportamento anulável ou reapontável.
Principais conclusões
As funções tornam o comportamento reutilizável e nomeável.
Use referências para evitar cópias ou para modificar de propósito o estado de quem chamou.
Use referências const para entradas grandes só de leitura.
Quiz da aula
5 perguntas · aprovação com 4 acertos · até 50 XP
Ao passar, você conclui a aula e mantém sua sequência. As perguntas erradas voltarão em sessões de revisão.
Pratique: escreva código em C++
Escreva C++20 no editor e execute com entradas de exemplo. O GCC 14 compila o código pelo Compiler Explorer, um serviço público gratuito; seu código-fonte e a entrada de teste são enviados para lá.
Escreva uma função reutilizável de quadrado
Implemente square para que devolva a entrada multiplicada por ela mesma. Leia um inteiro e imprima o resultado.
- Quadrado de 4
- Quadrado de -3
Seu código é compilado como C++20 com gcc 14 (-Wall -Wextra) e executado no Compiler Explorer (godbolt.org), um serviço público gratuito.
Dúvidas sobre esta lição
Travou em algum ponto? Pergunte. Descobriu algo? Compartilhe. Explicar também é uma ótima forma de aprender.
Carregando publicações…