Udostępnij za pośrednictwem


2.7.2.1 prywatne

private Klauzuli deklaruje zmienne liście zmiennej za prywatne dla każdego wątku w zespole.Składnia private klauzuli jest w następujący sposób:

private(variable-list)

Zachowanie zmienna, określona w private klauzuli jest w następujący sposób.Nowy obiekt z czasem trwania składowania automatyczne jest przydzielany dla konstrukcji.Rozmiar i wyrównanie nowego obiektu zależą od typu zmiennej.Przydział ten występuje raz dla każdego wątku w zespole i domyślnego konstruktora jest wywoływana dla obiektu klasy, w razie potrzeby; w przeciwnym razie wartość początkowa jest nieokreślony.Oryginalny obiekt odwołuje się zmienna ma wartość nieokreśloną po wejściu do konstrukcji, nie mogą być modyfikowane w ramach dynamicznego zakresu konstrukcji i ma wartość nieokreśloną po wyjściu z konstrukcji.

W zakresie leksykalne dyrektywa konstrukcji zmiennej odwołuje się do nowego obiektu prywatnego przydzielone przez wątek.

Ograniczenia w odniesieniu do private klauzuli są w następujący sposób:

  • Zmienna typu klasy określonej w private klauzuli musi być dostępny, jednoznaczne domyślnego konstruktora.

  • Zmienna, określona w private nie mogą mieć klauzulę const-kwalifikacje typu, chyba że ma on klasy, należy wpisać z mutable Członkowskich.

  • Zmienna, określona w private klauzuli nie mogą mieć niekompletnemu typowi lub typ odwołania.

  • Zmienne, które pojawiają się w reduction klauzuli równolegle dyrektywy nie może być określony w private klauzula w sprawie dyrektywy podziału pracy, która wiąże konstrukcja równolegle.