CS0193 de erro do compilador

Mensagem de erro

O * ou-> operador deve ser aplicada a um ponteiro

The * or -> operador foi usado com um tipo nonpointer.Para obter mais informações, consulte Tipos de ponteiro (C# Programming Guide).

O exemplo a seguir gera CS0193:

// CS0193.cs
using System;

public struct Age
{
   public int AgeYears;
   public int AgeMonths;
   public int AgeDays;
}

public class MyClass
{
   public static void SetAge(ref Age anAge, int years, int months, int days)
   {
      anAge->Months = 3;   // CS0193, anAge is not a pointer
      // try the following line instead
      // anAge.AgeMonths = 3;
   }

   public static void Main()
   {
      Age MyAge = new Age();
      Console.WriteLine(MyAge.AgeMonths);
      SetAge(ref MyAge, 22, 4, 15);
      Console.WriteLine(MyAge.AgeMonths);
   }
}