C ++ stdforward

C ++ stdforward
L'une des fonctions C ++ essentielles, la fonction avant (), sera couverte dans la leçon d'aujourd'hui. Pour nous assurer que chaque aspect de la fonction est compris clairement, nous utiliserons également quelques exemples. Mais d'abord, passons rapidement en revue le langage de programmation C ++, les principes fondamentaux des fonctions et la logique derrière la mise en œuvre de la fonction avant ().

Le fondement du langage de programmation C ++ est fondé sur les concepts de la programmation orientée objet (OOP). L'utilisateur peut facilement construire et comprendre les principes du programme car C ++ a un cadre approprié. De plus, comme les fonctions sont des pièces de code concises, le principe a été précisé en C ++ afin qu'il puisse être utilisé n'importe où dans un programme en cours d'exécution.

Introduction

Dans la langue C ++, la fonction avant () fonctionne de manière similaire à la fonction Move () comme les deux sont utilisés pour implémenter la sémantique Move. Dans la fonction Forward (), il accepte une valeur de transfert en tant que valeur d'entrée, puis il détermine si un LVALUE ou une référence référencée a été fourni à la valeur d'entrée. Et en retour, qu'il donnera ou non le type de références approprié avec l'argument du modèle T. La fonction avant () est utilisée pour faire un transfert parfait. Lorsqu'une référence de référence est attribuée à une variable REF, REF devient une entité nommée. Même si REF est une référence de la valeur, elle relève de la catégorie LVALUE. En conséquence, la copie de la sémantique plutôt que de déplacer la sémantique est utilisée pour les références.

Syntaxe

La fonction lvalue () est un modèle de valeur gauche dans la fonction avant () et c'est le mot-clé prédéfini dans la langue C ++ qui est utilisé pour commencer un modèle de classe. Il est ensuite suivi par tous les paramètres de modèle qui sont contenus dans A et la déclaration de classe. Le paramètre de modèle «T» et le mot-clé «classe» sont des espaces réservés pour les types de données utilisés dans la déclaration. Nous allons passer ce paramètre «t» et appeler la fonction avant () et y passer le type et l'argument. La fonction de modèle supprimée () fait partie de la bibliothèque standard C ++. La fonction RValue () est le modèle de valeur de bonne valeur dans la fonction avant (). Une variable REF se transforme en un objet nommé lorsqu'une référence de Rvalue lui est appliquée. Même si la référence est une référence à une valeur.

Paramètres:

Arg: est un argument d'entrée et il est utilisé pour passer dans la fonction avant ().

Valeur de retour:

En retour, nous obtiendrons la référence RValue (valeur de droite) si nous n'avons pas obtenu la référence Lvalue (valeur de gauche).

Exemple 01:

Maintenant, commençons à implémenter notre tout premier exemple de l'une des fonctions qui est la fonction de transfert () en langue C ++. Pour commencer à écrire le code que nous voulons implémenter dans le langage de programmation C ++, nous avons toujours besoin d'un compilateur où nous écrivons le code et exécutons le code. Donc, pour cela, vous pouvez installer n'importe quel compilateur de la langue C ++, ou vous pouvez également utiliser le compilateur en ligne pour écrire et exécuter le code s'il est compatible avec les bibliothèques que vous allez utiliser dans le programme.

#inclure
#inclure
Utilisation de Namespace Std;

Après avoir ouvert le compilateur C ++, vous pouvez maintenant commencer à écrire le code. Dans les programmes C ++, nous devons toujours inclure des fichiers d'en-tête dans le programme afin que nous puissions facilement appeler la fonction que nous allons utiliser dans le programme n'importe où. Ces bibliothèques sont les bibliothèques intégrées du langage de programmation C ++. Nous devons simplement écrire une seule ligne de code pour inclure ces bibliothèques. La première bibliothèque que nous inclurons toujours dans le programme C ++ est la bibliothèque «IOSTEAM» qui est utilisée pour obtenir la contribution de l'utilisateur et nous pouvons également afficher les données via la bibliothèque «IOSTEAM». Pour appeler la bibliothèque, nous écrivons d'abord le symbole «#» qui indiquera au compilateur que nous allons accéder à la bibliothèque. Ensuite, nous écrivons le mot-clé «inclure» qui est le mot-clé prédéfini qui instruira le compilateur que nous incluons la bibliothèque. Et dans le symbole, nous écrire le nom de la bibliothèque que nous importons dans le programme qui est iOStream ».

Nous inclurons la deuxième bibliothèque intégrée du programme que nous utilisons qui est «utilitaire». La bibliothèque «utilitaire» est utilisée pour définir certains modèles qui sont souvent utilisés dans la bibliothèque de modèles standard (STL) dans l'ensemble du programme existant. De plus, nous utilisons la règle «Utilisation de l'espace de noms STD» pour empêcher les objets, les méthodes et les paramètres de partager le même domaine dans tout le reste du programme.

vide surchargé (int const & a)

couter<< "[lvalue]";

void surchargé (int && a)

couter<< "[rvalue]";

modèle
T en avant (t && a)

surchargé (a);
surchargé (en avant (a));

Nous avons mis en œuvre la fonction globale qui est l'une des méthodes uniques orientées objet où nous avons déclaré la fonction en dehors de la fonction principale () et ensuite nous appelons simplement la fonction dans la fonction principale () et transmis les variables déclarées de manière à ce que nous puissions Obtenez la sortie souhaitée. Tout d'abord, nous rédigerons le type de données de la fonction que nous implémentons qui est «void», ce qui signifie que la fonction ne renvoie aucune valeur.

Ensuite, nous rédigerons le nom de la fonction que nous allons implémenter «Fonction surload ()» ANS et nous allons y passer le paramètre. Dans la fonction Overload (), nous avons imprimé le message B en utilisant la méthode cout (). La fonction surchargée () signifie que vous pouvez fournir plusieurs fonctions avec le même nom dans le même espace de noms. Avec des fonctions surchargées, vous pouvez donner une méthode à plusieurs sémantiques en fonction des types et des quantités de ses paramètres. Comme vous le voyez, nous avons implémenté une fonction de plus avec le même nom «surchargé» dans le même programme et nous avons passé le paramètre dedans.

Ensuite, nous avons implémenté la fonction de modèle () prédéfinie dans le programme afin que nous puissions retourner le résultat de tout type de données. Et nous avons appelé la fonction surchargée (). Comme vous l'avez vu, la fonction surchargée () est de type «int», c'est pourquoi nous avons implémenté la fonction template (), si nous entrons la valeur de tout type afin que le compilateur ne génére pas d'erreur dans le programme.

Ensuite, nous commencerons la fonction principale () où nous déclarerons la variable et nous accéderons aux fonctions globales ci-dessus ici. Tout d'abord, nous avons déclaré les deux variables de type int et leur avons attribué la valeur. Nous avons déclaré une autre variable de type «int» nommé et nous avons stocké l'expression ADD dans «Res». Ensuite, nous avons imprimé la variable «Res» et avons également passé la variable «Res» dans la fonction Forward () afin que nous obtenions le lvalue et dans l'appel de fonction avant () suivant, nous obtiendrons le LVALUE et la référence de la valeur.

int main ()
int a = 30, b = 23;
int res = a + b;
couter<< res << " is a: ";
Forward (res);
couter<couter<en avant (a + b);
couter<retour 0;

Et à la fin de la fonction principale (), nous retournerons 0 à la fonction principale () afin qu'il indique au compilateur que nous voulons arrêter l'exécution du programme et montrer la sortie du programme.

Conclusion

Dans cet article, nous avons appris la fonction Forward () qui est la fonction intégrée du langage de programmation C ++. Nous avons également appris ce qu'est la surcharge et aussi la fonction de modèle () de la langue C ++. Nous avons implémenté un exemple de la fonction avant () et nous avons utilisé la fonction de modèle ().