Structures

Julia intermédiaire

Anthony Markham

Quantitative Developer

Structures - introduction

  • Les structures sont une application des types composites.
  • Elles ressemblent aux autres types, mais avec autant de champs que vous voulez.
  • On peut définir un type composite, puis créer un objet qui représente ce type.
Julia intermédiaire

Structures - syntaxe

  • Utilisez le mot-clé struct pour définir une structure.
  • Chaque champ est indenté à l'intérieur de la déclaration struct.
struct Person
    age
    height
    location
end
steve = Person(18, 180, "London")
println(steve.height)
180
Julia intermédiaire

Structures - type d'un objet

  • Le type de steve est Person.
struct Person
    age
    height
    location
end
steve = Person(18, 180, "London")
println(typeof(steve))
Person
Julia intermédiaire

Structures - démontrer l'immutabilité

  • Une structure est immuable par défaut.
# C'est l'anniversaire de Steve !
steve = Person(18, 180, "London")
steve.age = 19
setfield!: immutable struct of type Person cannot be changed
Julia intermédiaire

Structures - structures mutables

  • Utilisez le mot-clé mutable pour créer une structure mutable.
mutable struct Person
    age
    height
    location
end
steve = Person(18, 180, "London")
steve.age = 19
println(steve)
Person(19, 180, "London")
Julia intermédiaire

Structures - structures typées

  • On peut préciser un type de données pour chaque champ dans la définition.
mutable struct Person
    age::Int64
    height::Int64
    location::String
end
steve = Person(18.5, 180, "London")
InexactError: Int64(18.5)
Julia intermédiaire

Passons à la pratique !

Julia intermédiaire

Preparing Video For Download...