Compilerfout CS0208
Kan het adres van, de grootte van een aanwijzer niet ophalen of declareren naar een beheerd type ('type')
Zelfs wanneer het wordt gebruikt met het onveilige trefwoord, is het ophalen van het adres van een beheerd object, het ophalen van de grootte van een beheerd object of het declareren van een aanwijzer naar een beheerd type niet toegestaan. Een beheerd type is:
elk verwijzingstype
elke struct die een verwijzingstype bevat als een veld of eigenschap
Zie Niet-beheerde typen voor meer informatie.
In het volgende voorbeeld wordt CS0208 gegenereerd:
// CS0208.cs
// compile with: /unsafe
class myClass
{
public int a = 98;
}
struct myProblemStruct
{
string s;
float f;
}
struct myGoodStruct
{
int i;
float f;
}
public class MyClass
{
unsafe public static void Main()
{
// myClass is a class, a managed type.
myClass s = new myClass();
myClass* s2 = &s; // CS0208
// The struct contains a string, a managed type.
int i = sizeof(myProblemStruct); //CS0208
// The struct contains only value types.
i = sizeof(myGoodStruct); //OK
}
}
.NET-feedback
.NET is een open source project. Selecteer een koppeling om feedback te geven: