Funções

1. O que são funções em C++?

Funções são blocos de código nomeados que executam tarefas específicas e podem ser reutilizados em diferentes partes do programa. Elas melhoram a organização, a legibilidade e a manutenção do código, além de evitarem repetições desnecessárias.

2. Estrutura de uma função

Uma função em C++ é composta por:

  • Tipo de retorno: tipo do valor que será devolvido (int, double, void, etc.).
  • Nome da função: identificador único.
  • Parâmetros: valores de entrada (opcionais).
  • Corpo da função: bloco de comandos que define o que a função faz.

Exemplo básico:

int soma(int a, int b) {
return a + b;
}

Aqui, a função soma recebe dois inteiros e retorna a soma deles.

3. Como declarar e definir funções

Protótipo (opcional, mas recomendado): declaração da assinatura da função antes do main, útil para organizar o código.

int soma(int a, int b); // protótipo

Definição: implementação do que a função faz.

int soma(int a, int b) {

return a + b;

}

4. Como chamar uma função

Dentro do main ou de outra função, basta usar o nome da função e passar os argumentos necessários:

int resultado = soma(3, 4); // resultado recebe 7

5. Funções com diferentes tipos de retorno

Retornando valores:

double quadrado(double x) {

return x * x;

}

Sem retorno (void):

void mensagem() {

cout << "Olá!" << endl;

}

6. Passagem de parâmetros

Por valor: a função recebe uma cópia do argumento (alterações não afetam o valor original).

void incrementa(int x) {

x++;

}

Por referência: a função recebe o próprio argumento (alterações afetam o valor original).

void incrementa(int &x) {

x++;

}

Chamada:

int a = 5;

incrementa(a); // agora a = 6

7. Funções com parâmetros com valor de defeito

Podemos definir valores de defeito para parâmetros:

int soma(int a, int b = 10) {
return a + b;
}

Chamada:

soma(5); // retorna 15
soma(5, 3); // retorna 8

8. Exemplo prático completo

#include <iostream>
using namespace std;

// Protótipo da função
int soma(int a, int b);

void mensagem();

int main() {
int x = 2, y = 3;
mensagem();
cout << "A soma de " << x << " e " << y << " é " << soma(x, y) << endl;
return 0;
}

// Definição das funções
int soma(int a, int b) {
return a + b;
}

void mensagem() {
cout << "Bem-vindo ao tutorial de funções em C++!" << endl;
}

9. Dicas e boas práticas

  • Use funções para dividir o código em partes menores e reutilizáveis.
  • Prefira nomes claros e descritivos para suas funções.
  • Utilize parâmetros por referência quando precisar alterar o valor original.
  • Utilize protótipos para organizar programas maiores.