Page 1 sur 2

déclarer des procedures....

Publié : mer. 16/juin/2004 13:35
par freddix
Voila je suis en train de créer une DLL ( qui contient déjà 19 fonctions ) ...
le problème est que je fais appel à certaines procédures depuis d'autres ... Si ces dites procédures sont plus bas dans le code source, il ne les trouve pas et ne veut pas compiler la DLL...
Y aurait-il un moyen de déclarer les Procédures ( une sorte de listing ) pour ne pas être obligé d'organiser dans l'ordre les procédures appelées, appelantes ... ?

Merci :)

Publié : mer. 16/juin/2004 13:37
par Anonyme2
Il faut utilisder le mot Declare en mettant l'ensemble des paramètres de la procedure

Code : Tout sélectionner

Declare PlusLoin()

Procedure essai()
   PlusLoin()
Endprocedure

Procedure PlusLoin()
Endprocedure

Publié : mer. 16/juin/2004 13:54
par freddix
merci :)

donc par exemple :
Declare PlusLoin( Test.l )

Procedure essai()
PlusLoin( montest )
Endprocedure

Procedure PlusLoin( Test.l )
Endprocedure

Donc ceci est correct ???

Publié : mer. 16/juin/2004 13:56
par Aranoth
oui, pour savoir, tu créer ta procedure, et tu copie/colle la premiere ligne (Procedure blabla.type(param.type)) et tu chande Procedure par Declare

Publié : mer. 16/juin/2004 14:00
par Anonyme2
C'est tout à fait ça

Publié : mer. 16/juin/2004 14:01
par Ombres
mmmh jme demande quand même pourquoi Purebasic fait pas ca automatiquement ?

Publié : mer. 16/juin/2004 14:18
par Anonyme2
Ombres a écrit :mmmh jme demande quand même pourquoi Purebasic fait pas ca automatiquement ?
Le compilateur doit être à une seule passe. C'est plus rapide.

Publié : mer. 16/juin/2004 15:26
par Crystal Noir
moi je me suis posé une règle : déjà toutes mes procédures sont dans un pb à part. Ensuite toute procédure appelée dans une autre est automatiquement avant et jamais après comme ca pas de pb.

Publié : mer. 16/juin/2004 16:18
par Dr. Dri
Hum freddix... Déjà que sur le forum DB on reproche souvent aux nouveaux de ne pas lire un manuel ou une aide en ligne bofs... Si là on a un truc de qualité et que t'y jette même pas un coup d'oeil...

Dri :P

Publié : mer. 16/juin/2004 17:53
par freddix
@crystal : ben pour une dLL, y a que des procédures :lol: ;)
@dri, ah ... ou ??? ( désolé ) je viens pas souvent ici ... je connais pas trop le coin ;) nan, je rigole ... c vrai que la doc est pal mal ... mais il y a quelques lacunes dans la doc FR quand même ...

sinon est-il normal que pour les procedures qui renvoient un long on est pas obligé de mettre :
Declare.l
un simple :
Declare
fonctionne

alors que pour celles qui renvoient un Float, on est obligé de mettre :
Declare.f
sinon ca veut pas compiler ... :(
???

Publié : mer. 16/juin/2004 18:02
par comtois
par défaut , si tu ne précises pas le type toutes les variables sont des longs

Publié : mer. 16/juin/2004 18:03
par hardy
long est le type par défault en PB.
Tu peux modifier le type par défault avec deftype.f ce qui met le type par défault à float.

Publié : mer. 16/juin/2004 18:37
par julien
@Crystal Noir et si t'as 2 procedures qui s'appelle les unes aux autres ?

Publié : jeu. 17/juin/2004 12:00
par Le Soldat Inconnu
ben il tourne en rond ... il copie plein de fois la procedure en la numérotant 1, 2, 3, 4, etc ... :0: :jesors:

Publié : jeu. 17/juin/2004 12:07
par Crystal Noir
Julien : bah ils s'appellent par leur prénom :lol:

effectivement j'y avais pas pensé mais bon, moi ca m'arrive jamais pour le moment :p