Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
"identifier": specyfikatory dostępu do zestawów są dostępne tylko w kodzie skompilowanym za pomocą /clr opcji
Uwagi
Typ został zadeklarowany lub zdefiniowany za pomocą specyfikatora dostępu, który jest dozwolony tylko w kodzie skompilowanym przy użyciu polecenia /clr.
Ten błąd może wynikać z zagubionego publicsłowa kluczowego , protectedlub private brakującego dwukropka (:) po specyfikatorze dostępu w obrębie elementu class lub struct.
W języku C++/interfejsie wiersza polecenia typy natywne mogą być widoczne poza zestawem, ale można określić tylko dostęp do zestawów dla typów natywnych w /clr kompilacji. Aby uzyskać więcej informacji, zobacz Temat Widoczność/clr
Przykład
Poniższy przykład generuje kod C3381. Aby rozwiązać ten problem, najpierw usuń public specyfikator z class A definicji lub skompiluj /clr przy użyciu opcji . Następnie dodaj dwukropek po private , aby określić dostęp dla elementu class B {} b;. Dzieje się tak, ponieważ klasa zagnieżdżona nie może mieć specyfikatora dostępu do zestawu w ramach jego deklaracji.
// C3381.cpp
// compile with: /c
public class A { // C3381
private class B {} b; // C3381
};