Erro do Compilador CS0208
Não é possível obter o endereço, o tamanho ou declarar um ponteiro para um tipo gerenciado ('type')
Mesmo quando usado com a palavra-chave unsafe, não é permitido usar o endereço de um objeto gerenciado, obter o tamanho de um objeto gerenciado ou declarar um ponteiro para um tipo gerenciado. Um tipo gerenciado é:
qualquer tipo de referência
qualquer struct que contenha um tipo de referência, como campo ou propriedade
Para obter mais informações, consulte Tipos Não Gerenciados.
O exemplo a seguir gera o erro CS0208:
// 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
}
}
Comentários do .NET
O .NET é um projeto código aberto. Selecione um link para fornecer comentários: