Rechercher : dans
Par :

Retourner un tableau statique c++

Dernière réponse le 9 jan 2009 à 17:35:21 switch1, le 3 jan 2009 à 21:18:38 
 Signaler ce message aux modérateurs

Bonjour bonsoir tt le monde
est ce qu'on pas retourner un tableau statique en c++
je sais que pour retourner un pointeur(tableau dynamique)
int *fonction(.....){
----
----
}
mais lorsque je remplace le * avec [] ca marche pas
alors est ce qu'on peut retourner un tableau statique avec une methode en c++ si possible svp donnez moi la synthaxe
merci de votre aide

Configuration: Windows XP
Firefox 2.0.0.20

Meilleures réponses pour « retourner un tableau statique c++ » dans :

1

loupius, le 4 jan 2009 à 05:03:32
  • +2

Quel que soit le tableau, celui-ci ne peut être passé que par adresse.
Pour ce qui concerne la valeur de retour d'une fonction, c'est pareil.
Alors pourquoi ce n'est pas autorisé ? Tout simplement car c'est absurde. En effet, imaginons une fonction qui retournerait un tableau statique; la tableau serait mis sur la pile comme pour toute autre valeur de retour; alors comment l'appelant connaîtrait la taille du tableau ? Il ne le pourrait pas et par conséquent ne pourrait récupérer correctement la tableau... plantage assuré !
Maintenant supposons que nous retournions un pointeur sur un tableau statique qui aurait été déclaré dans la fonction, c'est possible et l'appelant pourrait récupérer le tableau... mais... et oui il y a un mais... à la fin de la fonction, la tableau, comme pour toute variable locale à une fonction, est détruit, c'est à dire libéré de la mémoire et, par conséquent, le pointeur récupéré pointerait sur un tableau qui n'existe plus... plantage assuré.
Ai-je été assez clair.

Répondre à loupius

2

 switch1, le 9 jan 2009 à 17:35:21

Merci

Répondre à switch1