Udostępnij za pomocą


Błąd kompilatora C3379

"class" : klasa zagnieżdżona nie może mieć specyfikatora dostępu do zestawu w ramach jego deklaracji

Uwagi

W przypadku zastosowania do typu zarządzanego, takiego jak klasa lub struktura, publiczne i prywatne słowa kluczowe wskazują, czy klasa zostanie uwidoczniona za pośrednictwem metadanych zestawu. public lub private nie można zastosować do klasy zagnieżdżonej, która dziedziczy dostęp do zestawu otaczającej klasy.

W przypadku użycia z /clr słowa kluczowe i wskazują, ref że klasa jest zarządzana (zobacz value).

Example

Poniższy przykład generuje kod C3379:

// C3379a.cpp
// compile with: /clr
using namespace System;

public ref class A {
public:
   static int i = 9;

   public ref class BA {   // C3379
   // try the following line instead
   // ref class BA {
   public:
      static int ii = 8;
   };
};

int main() {

   A^ myA = gcnew A;
   Console::WriteLine(myA->i);

   A::BA^ myBA = gcnew A::BA;
   Console::WriteLine(myBA->ii);
}