Esempio A.24 quella privata

private clausola (parte 2.7.2.1 nella pagina 25) in parallelo un'area è solo in effetti per l'ambito lessicale dell'area, non per l'ambito dinamico dell'area.Pertanto, nell'esempio che segue, qualsiasi utilizzo della variabile in all'interno di for ciclo nella routine f fa riferimento a una copia privata di in, mentre un utilizzo della routine g si riferisce a globale in.

int a;

void f(int n) 
{
    a = 0;

    #pragma omp parallel for private(a)
    for (int i=1; i<n; i++) 
    {
        a = i;
        g(i, n);
        d(a);     // Private copy of "a"
        ...
    }
    ...

void g(int k, int n) 
{
    h(k,a); // The global "a", not the private "a" in f
}