next up previous
Next: Typage structurel Up: Types et objets en Previous: Types et objets en

Le type d'un objet

Le type d'un objet contient la liste de ses méthodes avec leurs types, mais ne montre pas ceux des variables d'instance, qui restent cachés. Considérons la classe:

class point init =
 object
   val mutable x = init
   method getx = x
   method move d = x<-x+d
   method print = print_int x
end;;

# let p = new point 2;;
val p : point = <obj>

Nous forçons une erreur de typage afin de voir la structure du type point:

# fun (x : point) -> x+1;;
                   ^
This expression has type
  point = < getx : int; move : int -> unit; print : unit >
but is here used with type int



Maria-Viginia Aponte
2001-04-10