C++ Funções com exemplos de programas
O que é uma função em C++?
A função in 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++ funções de 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:
Aqui está uma captura de tela do código:
Explicação do código:
- Inclua o arquivo de cabeçalho iostream em nosso programa para usar suas funções.
- Inclua a biblioteca cmath para usar suas funções. Queremos usar a função sqrt() definida nele.
- Inclua o namespace std em nosso código para usar suas classes sem chamá-lo.
- Chame a função main(). A lógica do programa deve ser adicionada ao corpo desta função.
- Declare duas variáveis duplas, num e squareRoot.
- Imprima algum texto no console. O texto pede ao usuário para inserir um número.
- Leia a entrada do usuário no teclado. A entrada se tornará o valor da variável num.
- 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.
- Imprima o número inserido pelo usuário, sua raiz quadrada e algum outro texto no console.
- O programa deve retornar o valor após a conclusão bem-sucedida.
- 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:
Aqui está uma captura de tela do código:
Explicação do código:
- Inclua o arquivo de cabeçalho iostream em nosso programa para usar suas funções.
- Inclua o namespace std em nosso código para usar suas classes sem chamá-lo.
- Crie uma função definida pelo usuário chamada sayHello().
- Imprima algum texto no console quando a função sayHello() for chamada.
- Fim do corpo da função sayHello().
- Chame a função main(). A lógica do programa deve ser adicionada ao corpo desta função.
- Chame/invoque a função chamada sayHello().
- O programa deve retornar o valor após a conclusão bem-sucedida.
- Fim do corpo da função main().
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.
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.
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 valor. Este parâmetro denota o tipo de dados do valor de retorno. Algumas funções não retornam valor. Nesse caso, o valor deste parâmetro torna-se nulo.
- 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- Este é o tipo, a ordem e o número de parâmetros de 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.
Um programa é chamado pelo seu nome. Se a função receber parâmetros, seus valores deverão ser passados durante a chamada. Se o serviço não aceitar parâmetros, não passe nenhum valor durante a chamada.
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. A média dos valores que você passa deve ser igual ao número de parâmetros. Novamente, os valores também devem corresponder aos parâmetros em termos de tipo. Se o primeiro parâmetro for um número inteiro, o valor passado para ele deverá ser um número inteiro.
Pode-se atribuir valores padrão aos parâmetros de 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:
Aqui está uma captura de tela do código:
Explicação do código:
- Inclua o arquivo de cabeçalho iostream em nosso programa para usar suas funções.
- Inclua o namespace std em nosso código para usar suas classes sem chamá-lo.
- Declare uma função chamada addFunc() que aceita dois parâmetros inteiros. Isso cria o protótipo da função.
- Chame a função main(). A lógica do programa deve ser adicionada ao corpo desta função.
- Declare três variáveis inteiras, x, y e soma.
- Imprima algum texto no console. O texto pede ao usuário para inserir dois números.
- 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.
- 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.
- Imprima os valores das variáveis x, y e soma no console junto com outro texto.
- A função deve retornar valor após a conclusão bem-sucedida.
- Fim do corpo da função main().
- Definição de função. Estamos definindo a função addFunc(). Declararemos o que a função fará dentro de seu corpo, o { }.
- Declarando uma variável inteira chamada addFunc.
- Adicionando os valores dos parâmetros num1 e num2 e atribuindo o resultado à variável addFunc.
- A função addFunc() deve retornar o valor da variável addFunc.
- Fim do corpo da função, ou seja, definição da função.
Resumo
- Uma função em C++ ajuda você a agrupar o código relacionado em um.
- Funções facilitam a reutilização de código.
- Em vez de escrever código semelhante repetidamente, basta agrupá-lo em uma função. Você pode então chamar a função de qualquer lugar dentro do código.
- As funções podem ser de biblioteca ou definidas pelo usuário.
- Funções de biblioteca são funções integradas em vários C++ funções.
- Para usar funções de biblioteca, basta incluir sua biblioteca de definição e chamar a função. Você não define a função.
- Funções definidas pelo usuário são as funções que você define como um C++ programador.
- Uma declaração de função informa ao compilador sobre o nome da função, tipo de retorno e tipos de parâmetro.
- Uma definição de função adiciona o corpo da função.
- Se uma função recebe parâmetros, seus valores devem ser passados durante a chamada da função.