Lire en anglais

Partager via


Erreur du compilateur CS0193

L’opérateur * ou -> doit être appliqué à un pointeur

L’opérateur * ou -> a été utilisé avec un type non pointeur. Pour plus d’informations, consultez Types pointeur.

L’exemple suivant génère l’erreur 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);  
   }  
}