Probleme pour implementer une file en ada - Ada - Programmation
Marsh Posté le 10-02-2006 à 15:06:54
Ben ça veut dire Tableau anonyme. 
 
Les champs d'un article doivent être d'un type NOMMÉ et non anonyme. 
(C'est d'ailleurs la même chose pour les sous-programmes)
Marsh Posté le 10-02-2006 à 15:12:07
tu peut ecrire ça plutôt : 
| Code : 
 | 
Marsh Posté le 13-02-2006 à 07:48:10
Ok merci pour cette aide. 
Je comprends pas vraiment ce que ca change pour le compilateur, mais en effet il n'y a plus d'erreurs a la compilation. 
Etrange de pas pouvoir utiliser le type array directement.
Marsh Posté le 14-02-2006 à 14:54:37
| dentan a écrit : Ok merci pour cette aide.  | 
 
 
C'est parceque Ada est fortement typé. 
 
Ada exige que les variables soit d'un type nommé pour que le compilateur puisse controller des erreur de typage. 
ex: 
| Code : 
 | 
 
 
On peut écrire: 
| Code : 
 | 
 
Ce qui a pour effet d'affecter l'ensemble des recettes de la semaine 2 à celle de la semaine 1. 
Mais on ne peut pas écrire (et c'est heureux): 
| Code : 
 | 
 
 
Car les 2 tableaux -bien que de même dimensions et contenant le même type - n'ont sémantiquement rien à voir. 
 
Alors pourquoi peut-on écrire : 
| Code : 
 | 
 
 
C'est parceque Ada permet aussi de créer des tableau dit anonymes (i.e sans type). 
Et ainsi permet de créer des tableaux sans avoir à créer un nouveau type, lorsque par exemple tu ne veux créer qu'un seul tableau sans exporter de type... 
 
Alors là tu te dis : " mais j'veux créer qu'un seul tableau, juste pour mon article !!!!" 
 
Oui mais non car à ce moment là, ton article (qui est évidemment typé) contient des champs non typés, et là c'est la pagaille dans l'abstraction de ton type, et : 
| Code : 
 | 
 
Affecterait des champs qui n'ont pas le même type. 
 
Donc en conclusion, pas de tableau anonyme comme champ d'article.
Marsh Posté le 09-02-2006 à 18:15:09
Bonjour, j'essai d'implementer une module de file en ada, en me serant d'un tableau pour stocker les elements.
Voici la structure de donné que j'essai d'utiliser:
type File is
record
Taille: Integer := 10;
Tab: array (Integer range 1..Taille) of Integer;
Premier, Dernier : Integer := 0;
Longueur : Natural := 0;
end record;
Lors de la compilation j'ai le message:
files_limited.ads:13:15: anonymous arrays not allowed as components
C'est sur la ligne ou je declare le tableau evidement. Quelqu'un pourrait-il m'aider a comprendre l'erreur?
Ca veux dire quoi "anonymous arrays"?
Merci d'avance.