As funções são uma grande parte do C++.
Podemos escrever um código uma só vez dentro dela, e depois chamá-la, executando o código, como se o tivessemos copiado e colado.
Mais ou menos da mesma forma que as funções da matemática, podem receber argumentos, como um número, e fazer alguma coisa com ele, além de retornar um valor.
Escrevendo:
int function(){ //código }
Chamando a função
Para chamar a função, escrevemos o identifier (nome) dela, seguido dos argumentos necessários dentro de ( ).
function();
Isto essencialmente copia e cola o código dentro da função no local onde foi chamada.
Return
Como vêm, a função, assim como uma variável, tem um tipo de dado, neste caso int. Este tipo de dado diz-nos o que é que a função vai retornar. Sim, também pode retornar um valor. Depois de executar o código, pode retornar um valor, como se fosse uma variável temporária.
Pode também ter o tipo de dado void, este diz-nos que a função não vai retornar nenhum valor. Se a função tiver outro tipo de dado que não o void, é obrigatório que retorne um valor.
void function(){ //código }
Para retornar um valor, temos que escrever "return" seguido do valor a retornar.
Por isso se a função for do tipo int, pode ser:
int function(){ return 6; }
Ou seja, a própria função quando chamada, vai ter um valor, como uma variável:
cout << function() << endl;
Argumento
A função, dentro daqueles seus parêntesis, pode ter o que chamamos de argumentos. Estes são dados extra que damos para a função trabalhar.
Por exemplo, um argumento pode ser o nome de uma pessoa (uma string) e a função faz print de uma mensagem de boas-vindas para esse nome.
void welcome(string nome){ cout << "Bem-vindo, " << nome << endl; }
Se eu chamar a função com o nome "Nyck":
welcome("Nyck");
O output será:
Bem-vindo, Nyck
Programa exemplo
#include <iostream> using namespace std; int plus5(int num){ return num + 5; } int main() { int number; cin >> number; cout << plus5(number) << endl; }
Esta tem como objetivo receber um número inteiro como argumento e retornar esse número mais 5.
O programa pede o input do número e faz o output do valor que a função retorna (o número é o argumento).
Se o número que escrevermos for 415, na consola estará:
415 420
Mas atenção: o fato de o valor que a função retorna ser a variável number + 5, não significa que eu adicionei 5 à variável number. Também é possível fazer isso através da função através dos pointers, que falarei só mais à frente. E na parte 2 vou falar de algo que parece que irá fazer isto, mas afinal faz outra coisa.
Referências
Sem comentários:
Enviar um comentário
Comente de uma forma construtiva...