Contenu du cours
Fonctions C++
Fonctions C++
Portées des Variables
La portée d'une variable en C++ fait référence à la région ou au contexte dans un programme où une variable particulière est visible et accessible. En d'autres termes, elle définit où vous pouvez utiliser une variable dans votre code et détermine sa durée de vie.
Les variables déclarées à l'intérieur d'une fonction ont une portée locale. Elles sont accessibles uniquement à l'intérieur de la fonction ou du bloc de code dans lequel elles ont été déclarées. Les variables locales sont créées lorsque le programme entre dans le bloc où elles sont définies et détruites lorsque le bloc est quitté.
Note
En C++, un bloc de code est un ensemble d'instructions encadré par des accolades
{ }
.
Examinons l'exemple suivant :
main
#include <iostream> int myFunction() { // Create variable inside the function int localVar = 10; return localVar; } int main() { // Try to access the variable created inside function std::cout << localVar; }
Nous pouvons voir le message d'erreur suivant : error: ‘localVar’ was not declared in this scope
.
La variable localVar
a été créée à l'intérieur de la fonction MyFunction()
et a été détruite après son exécution. En conséquence, dans la fonction main()
, nous tentons d'accéder à une variable inexistante et obtenons une erreur.
Pour utiliser la valeur de localVar
, nous devons assigner la valeur de retour d'une fonction à une variable créée à l'intérieur de la fonction main
:
main
#include <iostream> int myFunction() { // Create variable inside the function int localVar = 10; return localVar; } int main() { // Assign the result of the function to a new variable int functionResult = myFunction(); std::cout << functionResult; }
Vous pourriez vous poser une question tout à fait logique : Comment peut-on renvoyer une variable d'une fonction alors que cette variable est détruite une fois la fonction terminée ?
Merci pour vos commentaires !