Array et library

B@tto:
Nan elle est définit une fois pour toute à l'instanciation. Par contre j'ai remarqué un truc : si dans mon .h je déclare un array sans spécifier la taille (par ex String MonTableau[]; ) => pas d'erreur à la compilation, normal ?

Normal dans les deux cas ça reste un pointeur :wink:

Exemple :

char toto[];
char *tata; // Équivalent si non initialisé

Dans le premier le tableau est créé automatiquement si tu met quelque chose dans les crochets, dans le second c'est à toi de faire pointer le pointeur sur quelque chose.

B@tto:
Oui mais c'est une variable à taille variable puisqu'elle est dépendante du nombre de caractère, et d'après ce que j'ai lu sur malloc(), il faut dimensionner via sizeof, facile pour un int dont la taille est fixe, mais une une string ?

NON, String est une classe, tu fait donc un tableau d'objet String, point final.
C'est à la classe String de gérer les alloc() realloc() pour stocker les char :wink:

Si tu veut faire ton propre tableau de char dynamique il faut garder un tableau de pointeur sur char* (-> char**, taille fixe connu) dont tu fait pointer chaque pointeur sur un tableau alloué dynamiquement (via alloc / realloc) en fonction de l'utilisation que tu en fait.
http://www.siteduzero.com/tutoriel-3-14061-l-allocation-dynamique.html