Types valeur

Type composite struct

Un type composite peut être déclaré en tant que type valeur

  • Instances stockées dans la pile (stack) plutôt que dans le tas (heap)

  • Permet parfois de gagner en performance

  • Plutôt adapté aux types compacts : peu de champs, peu de comportements

Types de déclaration :

  • Attribut [<Struct>]

  • Mot clé struct

  • Structure

Attribut [<Struct>]

Pour Record et Union

À placer avant ou après le mot cle type

type [<Struct>] Point = { X: float; Y: float }

[<Struct>]
type SingleCase = Case of string

Mot clé struct

Pour littéral de Tuple et Record anonyme

let t = struct (1, "a")
// struct (int * string)

let a = struct {| Id = 1; Value = "a" |}
// struct {| Id: int; Value: string |}

Structures

Alternatives aux classes 📍 Classe mais + limités / héritage et récursivité

👉 Cf. session sur l'orienté-objet et les classes...

Mis à jour

Ce contenu vous a-t-il été utile ?