2.7.2.5 výchozí
Výchozí klauzule umožňuje uživateli ovlivnit atributy sdílení dat proměnných.Syntaxe výchozí klauzule je takto:
default(shared | none)
Zadání default(shared) je ekvivalentní výpis výslovně každé proměnné aktuálně viditelné v sdílené klauzule, pokud je threadprivate nebo nevýhodyt-kvalifikovanou.Neexistuje explicitní výchozí klauzule, výchozí nastavení je stejné jako v případě default(shared) nebyly zadány.
Zadání default(none) vyžaduje, aby nejméně jeden z následujících musí být splněny pro každý odkaz na proměnnou v lexikální rozsah paralelní konstrukce:
Proměnná výslovně uvedeny v klauzuli atribut sdílení dat o konstrukci, která obsahuje odkaz.
Proměnná je deklarována v rámci paralelní konstrukce.
Proměnná je threadprivate.
Proměnná je const-kvalifikované typu.
Proměnná je řídicí proměnná smyčky pro pro smyčky, která následuje ihned pro nebo pro paralelní směrnice a proměnné odkaz se objeví uvnitř smyčky.
Určení na proměnnou firstprivate, lastprivate, nebo snížení doložky uzavřené směrnice způsobuje implicitní odkaz na proměnnou v ohraničujícím kontextu.Implicitní odkaz se také řídí výše uvedené požadavky.
Pouze jedinou výchozí na lze zadat klauzuli paralelní směrnice.
Proměnné výchozí atribut sdílení dat lze přepsat pomocí soukromé, firstprivate, lastprivate, snížení, a sdíleného klauzule doložené následující příklad:
#pragma omp parallel for default(shared) firstprivate(i)\
private(x) private(r) lastprivate(i)