On peut batailler tout de meme non ?
par exemple, soit ceci :
Code :
- typedef union
- {
- int integer;
- float flotant;
- }dynamic;
- dynamic Tableau[100];
|
Et on considere les element paires comme des integers et les impairs comme des flotants ...
Le prof peut dire qu'on a bien un tableau de types differents, mais l'eleve qui a une vision moins abstraite dira que j'ai bien un tableau regroupant un seul type : le type dynamic.
Considerons un type comme Variant par exemple, qui peut se faire passer pour n'importe quel autre.
Un coup un element d'un tableau de Variant pourra se faire passer pour un entier, le coup d'apres pour une chaine de caracteres ... mais ca reste un Variant ...
Un langage qui permet de faire du "dynamic typing" va forcement utiliser dans son tableau un type particulier ayant la capacite de se faire passer pour n'importe quel autre type. Ce type peut etre cache (innaccessible au programmeur, géré uniquement par le compilo), mais il existe.
Car, pour moi, si un tableau commence à avoir des elements de tailles differentes, ce n'est plus un tableau.
Tous les elements d'un tableau doivent occuper le meme espace.
De la à considérer que cela n'est possible (en toute securite) que s'ils sont tous de meme type ... il n'y a qu'un pas.
Theoriquement, une variable peut ne pas avoir de type (au moment de la compilation par exemple)
Mais en pratique, toutes les variables sont d'un certain type.
Bref, demande a ton prof ce qu'il pense de ca.
Il aurait peut etre fallu mettre "ensemble de donnees de meme taille"
Mais la encore, y'a surement de quoi debattre ...
Au fait, quelle reponse attendait le prof ? (la correction!)
---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite