Tableau d'objet complexe (deuxième partie)
par
, 26/04/2022 à 18h27 (1659 Affichages)
Après réflexion, j'ai conclu que mon exemple n'était pas très utile.
à priorie, il n'existe pas vraiment d'avantage à déclarer la taille d'un tableau à l'avance. Mais comme il existe un compilateur qui transforme le code en C. Cela influence comment le code sera converti.
Exemple oû la taille du tableau est déclaré:
Maintenant le cas de figure le plus courant, où le tableau est charger graduellement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 class Point attr_accessor :x, :y def initialize(x, y) @x = x @y = y end def to_s "x: #{x}; y: #{y}" end end mon_carré = Array.new(4) for i in (0..4) do mon_carré[i] = Point.new(0,0) end mon_carré[0].x= 4 mon_carré[0].y= 6 mon_carré.each {|a| puts a.to_s} puts mon_carré[1].x puts mon_carré[0].to_s
J'utilise << pour ne pas avoir à tenir le compte de Points.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 class Point attr_accessor :x, :y def initialize(x, y) @x = x @y = y end def to_s "x: #{x}; y: #{y}" end end mon_carré = [] mon_carré << Point.new(4,6) mon_carré << Point.new(7,9) mon_carré.each {|a| puts a.to_s} puts mon_carré[1].x puts mon_carré[0].to_s