4 messages in org.openoffice.fr.progRe: [prog] Tableau dans un procédure
FromSent OnAttachments
xavier roguiezJun 14, 2009 6:21 am 
Thibault VataireJun 15, 2009 5:07 am 
Laurent GodardJun 15, 2009 7:34 am 
Thibault VataireJun 15, 2009 10:03 am 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: [prog] Tableau dans un procédureActions...
From:Thibault Vataire (tvat@starxpert.fr)
Date:Jun 15, 2009 5:07:27 am
List:org.openoffice.fr.prog

Bonjour,

Effectivement, la transmission d'un tableau comme paramètre se fait
systématiquement par référence. Cette observation est valable quelque soit le type de tableau et le nombre de
dimensions. Je ne pense pas que passer un tableau par valeur ai réellement un sens car cela
impliquerait de copier l'ensemble des valeurs de ce tableau, ce qui pourrait
être très gourmand en ressources. De plus il est fort probable que l'accès à un élément du tableau se fasse à
partir de la référence du premier élément, rendant ainsi indispensable le
passage par référence.

Cordialement,

T. Vataire

----- Mail Original ----- De: "xavier roguiez" <xr@geo.hmg.inpg.fr> À: pr@fr.openoffice.org Envoyé: Dimanche 14 Juin 2009 15h23:50 GMT +02:00 Harare / Pretoria Objet: [prog] Tableau dans un procédure

Bonjour

Je dois encore commettre une boulette évidente, mais je ne vois pas.

Je tente de passer un tableau à 2 dimensions en argument par valeur. J'ai testé sur un ECM le problème me concernant (p125 Programmation OO par l'exemple)

Sub Main() dim tata(5,2) as double tata(1,0)=123 tata(2,1)=-5.7 tata(3,2)=pi manipulerTableau (tata()) end sub

sub manipulerTableau(byval v() as double) print UBound(v,1), UBound(v,2), v(3,2)

End Sub

La seule différence par rapport au code de départ est le byval de la sous procédure d'appel manipulerTableau, je l'ai finalement enlevé et ça fonctionne, dans le cas contraire, j'ai un variable d'objet non définie erreur d'exécution basic dont je ne comprends pas l'origine. On ne peut pas passer un tableau à double dimensions par valeurs ?

Avez vous l'explication ? xavier