C++ Funções com exemplos de programas

⚡ Resumo Inteligente

Funções em C++ Agrupe instruções relacionadas em blocos nomeados reutilizáveis ​​que recebem entradas, as processam e retornam saídas. Os programas combinam funções de biblioteca integradas e funções definidas pelo usuário, cada uma declarada, definida e chamada para evitar repetição de código.

  • 🧩 O que é: Uma função agrupa instruções que recebem parâmetros, os processam e retornam um valor, executando uma tarefa comum a partir de um único bloco.
  • 📚 Funções incorporadas: O C++ A biblioteca padrão fornece funções prontas, como sqrt(), que você pode chamar diretamente sem precisar escrevê-las.
  • 🛠️ Funções definidas pelo usuário: Os programadores criam suas próprias funções, dão-lhes nomes únicos e invocam esse código de qualquer lugar do programa.
  • 📝 Declaração e definição: Um protótipo declara o tipo de retorno, o nome e os tipos de argumento; a definição fornece o corpo da função.
  • 📞 Chamada e argumentos: Chamar uma função executa seu corpo; os argumentos devem corresponder aos parâmetros em número e tipo, e valores padrão são permitidos.
  • 🤖 Assistência de IA: O GitHub Copilot e assistentes semelhantes criam estruturas de suporte. C++ Assinaturas de funções, corpos e chamadas a partir de um breve comentário.

C++ Funções

O que é uma função em C++?

Uma função em C++ refere-se a um grupo de instruções que recebe uma entrada, a processa e retorna uma saída. A ideia por trás de uma função é combinar tarefas comuns que são realizadas repetidamente. Se você tiver entradas diferentes, não escreverá o mesmo código novamente. Você simplesmente chamará a função com um conjunto diferente de dados chamados parâmetros.

Cada C++ programa tem pelo menos uma função, a função main(). Você pode dividir seu código em diferentes funções. Esta divisão deve ser tal que cada função execute uma tarefa específica.

Existem muitas funções integradas no C++ biblioteca padrão. Você pode chamar essas funções dentro do seu programa.

Por que usar funções?

Existem inúmeros benefícios associados ao uso de funções. Esses incluem:

  • Cada função reúne o código relacionado. Isso torna mais fácil para os programadores entenderem o código.
  • As funções facilitam a programação, eliminando a repetição de código.
  • Funções facilitam a reutilização de código. Você pode chamar a mesma função para executar uma tarefa em diferentes seções do programa ou mesmo fora do programa.

Funções incorporadas

In C++, as funções da biblioteca são integradas C++ funções. Para usar essas funções, basta invocá-las/chamá-las diretamente. Você não precisa escrever as funções sozinho.

1 exemplo:

#include <iostream>
#include <cmath>
using namespace std;
int main() {
	double num, squareRoot;
	cout << "Enter number: ";
	cin >> num;
	squareRoot = sqrt(num);
	cout << "The square root of " << num << " is: " << squareRoot;
	return 0;
}

Saída:

Saída do C++ Exemplo da função sqrt() integrada

Aqui está uma captura de tela do código:

C++ Código que chama a função sqrt() integrada do cmath.

Code Explicação:

  1. Inclua o arquivo de cabeçalho iostream em nosso programa para usar suas funções.
  2. Inclua a biblioteca cmath para usar suas funções. Queremos usar a função sqrt() definida nele.
  3. Inclua o namespace std em nosso código para usar suas classes sem chamá-lo.
  4. Chame a função main(). A lógica do programa deve ser adicionada ao corpo desta função.
  5. Declare duas variáveis ​​duplas, num e squareRoot.
  6. Imprima algum texto no console. O texto pede ao usuário para inserir um número.
  7. Leia a entrada do usuário no teclado. A entrada se tornará o valor da variável num.
  8. Chame a função da biblioteca sqrt(), que calcula a raiz quadrada de um número. Passamos o parâmetro num para a função, o que significa que ela calculará a raiz quadrada de num. Esta função é definida na biblioteca cmath.
  9. Imprima o número inserido pelo usuário, sua raiz quadrada e algum outro texto no console.
  10. O programa deve retornar o valor após a conclusão bem-sucedida.
  11. Fim do corpo da função main().

Funções definidas pelo usuário

C++ permite que os programadores definam suas próprias funções. O objetivo da função é agrupar o código relacionado. O código recebe então um identificador exclusivo, o nome da função.

A função pode ser chamada/invocada de qualquer outra parte do programa. Em seguida, ele executará o código definido em seu corpo.

2 exemplo:

#include <iostream>
using namespace std;

void sayHello() {
	cout << "Hello!";
}

int main() {

	sayHello();

	return 0;
}

Saída:

Saída do C++ Função sayHello() definida pelo usuário

Aqui está uma captura de tela do código:

C++ código que define e chama uma função definida pelo usuário

Code Explicação:

  1. Inclua o arquivo de cabeçalho iostream em nosso programa para usar suas funções.
  2. Inclua o namespace std em nosso código para usar suas classes sem chamá-lo.
  3. Crie uma função definida pelo usuário chamada sayHello().
  4. Imprima algum texto no console quando a função sayHello() for chamada.
  5. Fim do corpo da função sayHello().
  6. Chame a função main(). A lógica do programa deve ser adicionada ao corpo desta função.
  7. Chame/invoque a função chamada sayHello().
  8. O programa deve retornar o valor após a conclusão bem-sucedida.
  9. Fim do corpo da função main().

O compilador precisa conhecer uma função antes que ela seja usada.

Declaração/Protótipo de Função

Se você definir uma função definida pelo usuário após a função main(), o C++ compilador retornará um erro. A razão é que o compilador não conhece os detalhes da função definida pelo usuário. Os detalhes incluem seu nome, os tipos de argumentos e seus tipos de retorno.

In C++, a declaração/protótipo de função declara uma função sem um corpo. Isso fornece ao compilador detalhes da função definida pelo usuário.

Na declaração/protótipo, incluímos o tipo de retorno, o nome da função e os tipos de argumento. Os nomes dos argumentos não são adicionados. No entanto, adicionar os nomes dos argumentos não gera nenhum erro.

C++ diagrama de sintaxe de declaração/protótipo de função

Definição de Função

O objetivo da declaração da função é informar ao C++ compilador sobre o nome da função, o tipo de retorno e os parâmetros. Uma definição de função diz ao C++ compilador sobre o corpo da função.

C++ diagrama de estrutura de definição de função

Sintaxe

return_datatype function_name( parameters) {
   function body 
}

Do exposto acima, uma definição de função possui o cabeçalho e o corpo da função. Aqui está uma explicação dos parâmetros:

  • `return_datatype` - Algumas funções retornam um valor. Este parâmetro indica o tipo de dados do valor retornado. Algumas funções não retornam nenhum valor. Nesse caso, o valor deste parâmetro torna-se `void`.
  • function_name- Este é o nome da função. O nome da função e os parâmetros formam a assinatura da função.
  • Parâmetros - Refere-se ao tipo, à ordem e ao número de parâmetros da função. Algumas funções não possuem parâmetros.
  • corpo da função- são declarações que definem o que a função fará.

Chamada de Função

Para que uma função execute a tarefa especificada e retorne a saída, ela deve ser chamada. Quando você chama uma função, ela executa as instruções adicionadas ao seu corpo.

Uma função é chamada pelo seu nome. Se a função recebe parâmetros, seus valores devem ser passados ​​durante a chamada. Se a função não recebe parâmetros, não passe nenhum valor durante a chamada.

C++ diagrama de sintaxe de chamada de função

Argumentos de passagem

In C++, um argumento/parâmetro são os dados passados ​​para uma função durante sua chamada. Os valores devem ser inicializados com suas respectivas variáveis.

Ao chamar uma função, os argumentos devem corresponder em número. Isso significa que os valores passados ​​devem ser iguais ao número de parâmetros. Além disso, os valores também devem corresponder aos parâmetros em termos de tipo. Se o primeiro parâmetro for um inteiro, o valor passado para ele também deverá ser um inteiro.

É possível atribuir valores padrão aos parâmetros de uma função. Se você não passar um valor para o parâmetro durante a chamada da função, o valor padrão será usado.

Exemplo 3: Como escrever e chamar uma função

#include <iostream>
using namespace std;
int addFunc(int, int);
int main() {
	int x, y, sum;
	cout << "Enter two numbers: ";
	cin >> x >> y;
	sum = addFunc(x, y);
	cout <<"The sum of "<<x<< " and " <<y<<" is: "<<sum;
	return 0;
}
int addFunc(int num1, int num2) {
	int addFunc;
	addFunc = num1 + num2;
	return addFunc;
}

Saída:

Saída do C++ A função addFunc() retorna uma soma.

Aqui está uma captura de tela do código:

C++ código passando argumentos para a função addFunc()

Code Explicação:

  1. Inclua o arquivo de cabeçalho iostream em nosso programa para usar suas funções.
  2. Inclua o namespace std em nosso código para usar suas classes sem chamá-lo.
  3. Declare uma função chamada addFunc() que aceita dois parâmetros inteiros. Isso cria o protótipo da função.
  4. Chame a função main(). A lógica do programa deve ser adicionada ao corpo desta função.
  5. Declare três variáveis ​​inteiras, x, y e soma.
  6. Imprima algum texto no console. O texto pede ao usuário para inserir dois números.
  7. Leia a entrada do usuário no teclado. O usuário deve inserir dois números para as variáveis ​​x e y, separados por espaço.
  8. Chame a função addFunc() e passe para ela os parâmetros x e y. A função irá operar nesses parâmetros e atribuir a saída à variável sum.
  9. Imprima os valores das variáveis ​​x, y e soma no console junto com outro texto.
  10. A função deve retornar valor após a conclusão bem-sucedida.
  11. Fim do corpo da função main().
  12. Definição de função. Estamos definindo a função addFunc(). Declararemos o que a função fará dentro de seu corpo, o { }.
  13. Declarando uma variável inteira chamada addFunc.
  14. Adicionando os valores dos parâmetros num1 e num2 e atribuindo o resultado à variável addFunc.
  15. A função addFunc() deve retornar o valor da variável addFunc.
  16. Fim do corpo da função, ou seja, definição da função.

Perguntas Frequentes

A chamada por valor copia o argumento, portanto, as alterações dentro da função não afetam o original. A chamada por referência passa a variável com um e comercial (&), permitindo que a função modifique diretamente o valor definido por quem a chamou. C++ Por padrão, a chamada é feita por valor.

A sobrecarga de funções permite que várias funções compartilhem o mesmo nome, mas difiram no número ou tipo de seus parâmetros. O compilador escolhe a versão correta dentre os argumentos fornecidos, melhorando a legibilidade de operações relacionadas.

Uma função inline pede ao compilador que insira seu corpo em cada ponto de chamada, em vez de fazer uma chamada normal. Isso pode reduzir a sobrecarga para funções pequenas, embora o compilador possa ignorar a dica.

Uma função recursiva chama a si mesma, dividindo um problema em subproblemas menores. Ela precisa de um caso base que interrompa a recursão; caso contrário, as chamadas se repetem indefinidamente e causam estouro de pilha. O fatorial é um exemplo clássico.

Você passa o parâmetro como um ponteiro ou um array dimensionado e geralmente envia seu comprimento separadamente, porque o array se transforma em um ponteiro. Veja passagem. matrizes em C++ funções Para exemplos completos e resolvidos.

Uma função retorna um valor diretamente, mas você pode retornar vários usando parâmetros de referência de saída, uma struct, um std::pair, um std::tuple ou um std::vector. As associações estruturadas então desempacotam a tupla retornada no local da chamada.

Sim. Assistentes de codificação com IA transformam um comentário em linguagem simples em um código completo. C++ função, sugerindo a assinatura, o corpo e o tipo de retorno. Eles também refatoram funções longas, embora você deva revisar a lógica gerada.

Copiloto do GitHub preenchimento automático C++ O sistema analisa definições de funções, protótipos e chamadas a partir de seus comentários ou nomes, propõe sobrecargas e elabora testes unitários. Ele usa cabeçalhos referenciados para contexto, mas cada sugestão ainda precisa ser revisada.

Resuma esta postagem com: