Funzioni C++


Una funzione è un blocco di codice che viene eseguito solo quando viene chiamata.

È possibile passare dati, noti come parametri, in una funzione.

Le funzioni vengono utilizzate per eseguire determinate azioni e sono importanti per riutilizzare il codice: definire il codice una volta e utilizzarlo più volte.


Crea una funzione

C++ fornisce alcune funzioni predefinite, come main(), che viene utilizzata per eseguire codice. Ma puoi anche creare le tue funzioni per eseguire determinate azioni.

Per creare (spesso indicato come dichiarare ) una funzione, specificare il nome della funzione, seguito da parentesi () :

Sintassi

void myFunction() {
  // code to be executed
}

Esempio spiegato

  • myFunction()è il nome della funzione
  • voidsignifica che la funzione non ha un valore di ritorno. Imparerai di più sui valori di ritorno più avanti nel prossimo capitolo
  • all'interno della funzione (il corpo), aggiungi il codice che definisce cosa dovrebbe fare la funzione

Chiama una funzione

Le funzioni dichiarate non vengono eseguite immediatamente. Sono "salvati per un uso successivo" e verranno eseguiti in seguito, quando vengono chiamati.

Per chiamare una funzione, scrivi il nome della funzione seguito da due parentesi () e un punto e virgola;

Nell'esempio seguente, myFunction()viene utilizzato per stampare un testo (l'azione), quando viene chiamato:

Esempio

All'interno main, chiama myFunction():

// Create a function
void myFunction() {
  cout << "I just got executed!";
}

int main() {
  myFunction(); // call the function
  return 0;
}

// Outputs "I just got executed!"

Una funzione può essere chiamata più volte:

Esempio

void myFunction() {
  cout << "I just got executed!\n";
}

int main() {
  myFunction();
  myFunction();
  myFunction();
  return 0;
}

// I just got executed!
// I just got executed!
// I just got executed!


Dichiarazione e definizione di funzione

Una funzione C++ è composta da due parti:

  • Dichiarazione: il tipo restituito, il nome della funzione e i parametri (se presenti)
  • Definizione: il corpo della funzione (codice da eseguire)
void myFunction() { // declaration
  // the body of the function (definition)
}

Nota: se una funzione definita dall'utente, come quella myFunction()dichiarata dopo la main()funzione, si verificherà un errore :

Esempio

int main() {
  myFunction();
  return 0;
}

void myFunction() {
  cout << "I just got executed!";
}

// Error

Tuttavia, è possibile separare la dichiarazione e la definizione della funzione - per l'ottimizzazione del codice.

Vedrai spesso programmi C++ con una dichiarazione di funzione sopra main()e una definizione di funzione sotto main(). Questo renderà il codice meglio organizzato e più facile da leggere:

Esempio

// Function declaration
void myFunction();

// The main method
int main() {
  myFunction();  // call the function
  return 0;
}

// Function definition
void myFunction() {
  cout << "I just got executed!";
}

Esercizi C++

Mettiti alla prova con gli esercizi

Esercizio:

Crea una funzione denominata myFunctione chiamala all'interno main().

void () {
  cout << "I just got executed!";
}

int main() {  
  ;
  return 0;
}