Error del compilador CS0209

Actualización: noviembre 2007

Mensaje de error

El tipo de variables locales declarado en una instrucción fixed debe ser un tipo de puntero
The type of local declared in a fixed statement must be a pointer type

La variable que se declara en una instrucción fixed debe ser un puntero. Para obtener más información, vea Código no seguro y punteros (Guía de programación de C#).

El código siguiente genera el error CS0209:

// CS0209.cs
// compile with: /unsafe

class Point
{
   public int x, y;
}

public class MyClass
{
   unsafe public static void Main()
   {
      Point pt = new Point();

      fixed (int i)    // CS0209
      {
      }
      // try the following lines instead
      /*
      fixed (int* p = &pt.x)
      {
      }
      fixed (int* q = &pt.y)
      {
      }
      */
   }
}