C++ Variabili globali


Esempio

Per dichiarare una singola istanza di una variabile accessibile in diversi file sorgente, è possibile renderla nell'ambito globale con la parola chiave extern . Questa parola chiave dice al compilatore che da qualche parte nel codice esiste una definizione per questa variabile, quindi può essere utilizzata ovunque e tutte le operazioni di scrittura / lettura verranno eseguite in un unico luogo di memoria.

// File my_globals.h:

#ifndef __MY_GLOBALS_H__
#define __MY_GLOBALS_H__

extern int circle_radius; // Promise to the compiler that circle_radius 
                          // will be defined somewhere

#endif

// File foo1.cpp:

#include "my_globals.h"

int circle_radius = 123; // Defining the extern variable

// File main.cpp:

#include "my_globals.h"
#include <iostream>

int main()
{
    std::cout << "The radius is: " << circle_radius << "\n";'
    return 0;
}

Produzione:

The radius is: 123