logo

Prototype de fonction en C++

Un prototype de fonction est une déclaration de la fonction qui informe le programme du nombre et du type de paramètres, ainsi que du type de valeur que la fonction renverra. Un aspect incroyablement utile des fonctions C++ est le prototypage de fonctions. Un prototype de fonction fournit des informations, telles que le nombre et le type de paramètres et le type de valeurs de retour, pour expliquer l'interface de fonction au compilateur.

La déclaration du prototype ressemble exactement à une définition de fonction, à l'exception du fait qu'il lui manque un corps ou son code. À ce stade, vous étiez conscient de la distinction entre une déclaration et une définition.

Une définition est une déclaration qui informe également le programme de ce que fait la fonction et comment elle le fait, par opposition à une déclaration qui introduit simplement un nom (de fonction) dans le programme. Par conséquent, les exemples ci-dessus sont des définitions de fonctions, et les exemples qui suivent sont des déclarations, ou peut-être un meilleur terme serait des prototypes de fonctions :

 int valAbs ( int x ) ; int greatcd ( int a1 , int a2 ) ; 

Par conséquent, les composants d’un prototype de fonction sont les suivants :

Actrice Rakul Preet Singh
  • type de retour
  • nom de la fonction
  • liste d'arguments

Regardons le prototype de la fonction suivante :

 int add ( int a1 , int a2 ) ; 

Ici,

  • type de retour - int
  • nom de la fonction - ajouter
  • liste d'arguments - (int a1, int a2)

Puisqu'un point-virgule suit chaque prototype de fonction, il y aura éventuellement ; tout comme dans le prototype de fonction précédent.

cas de test Junit

Remarque : Bien qu'une définition de fonction ne puisse pas omettre les noms de paramètres, une déclaration de fonction le peut.

Utilisation du vide

Comme vous le savez, le type de données void est utilisé comme type de retour pour les fonctions qui ne renvoient pas de valeur et décrit une collection vide de valeurs. Par conséquent, la déclaration d'une fonction qui ne renvoie pas de valeur est la suivante :

 void func_name ( parameter x ) ; 

On garantit qu'une fonction ne peut pas être utilisée dans une instruction d'affectation en définissant le type de retour de la fonction comme étant nul.

REMARQUE : Déclarez le type de résultat comme void si une fonction ne renvoie pas de valeur.

Une fonction peut être définie comme suit si elle n'a pas de paramètres et a une liste d'arguments vide :

 return_type func_name ( void ) ; 

REMARQUE : vous devez déclarer void dans le prototype d'une fonction si celui-ci n'accepte aucun argument.

Comme nous l'avons déjà noté, si le spécificateur de type d'une fonction est omis, on suppose qu'elle renverra des valeurs int. Le spécificateur de type doit être fourni pour les fonctions produisant des valeurs non entières.

comment trouver des trucs cachés sur Android

Un prototype de fonction peut exister avant ou après la définition de l'appel de la fonction (ces prototypes sont appelés prototypes globaux) (ces prototypes sont appelés prototypes locaux). Le didacticiel sur les règles de portée C++ comporte un didacticiel distinct qui décrit les prototypes globaux et locaux.

Regardons un exemple de prototype de fonction en C++ :

 # include using namespace std ; // function prototype void divide ( int , int ) ; int main ( ) { // calling the function before declaration. divide ( 10 , 2 ) ; return 0 ; } // defining function void divide ( int a , int b ) { cout << ( a / b ) ; } 

SORTIR:

 5 ???. Process executed in 0.11 seconds Press any key continue. 

Explication

Dans l'exemple ci-dessus, le prototype est :

 void divide ( int , int ) ; 

La fonctionnalité de prototype de fonction en C++ nous permet d'appeler la fonction avant qu'elle ne soit déclarée puisque dans l'exemple ci-dessus, le compilateur reçoit des informations sur le nom de la fonction et ses paramètres.

Un autre exemple pour mieux comprendre :

 # include using namespace std ; // Function prototype void best_site ( ) ; //using function with void return type int main ( ) { best_site ( ) ; return 0 ; } Void best_site ( ) { cout << ' Welcome to JavaTpoint ' ; } 

SORTIR:

liste en java
 Welcome to JavaTpoint ?????????????. Process executed 0.22 seconds Press any key to continue. 

Explication

La fonction dans le code ci-dessus a un type de retour void, elle ne renvoie donc rien. Nous avons effectué un prototypage de fonction, appelé la fonction, puis l'avons déclaré, et par conséquent, nous recevons une sortie sans erreurs.