Macro ?

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Neosis
Messages : 113
Inscription : dim. 24/févr./2008 20:11

Macro ?

Message par Neosis »

Bonjour tous le monde :D
Voila maintenant 4 mois que j'apprends le langage de Purebasic, j'ai beaucoup appris mais néanmoins j'ai quelques difficulté à comprendre certaine choses :?

J'aimerai comprendre ce qu'est une "Macro" , quel son ces avantages et inconvénients ? :roll:
Anonyme

Message par Anonyme »

Macro plus()
+
EndMacro

Macro Moins()
-
EndMacro

Debug 1 plus() 3
Debug 1 Moins() 3
Bonjour & bienvenu(e)
voici un exemple simple d'une macro , y a des situation plus complexe que cela , mais si tu débutes , on va pas te bourré le mou.
Je t'invite aussi à lire la doc fournie, elle traite les macros.

@+
Neosis
Messages : 113
Inscription : dim. 24/févr./2008 20:11

Message par Neosis »

J'ai lu la doc de purebasic mais je n'est pas vraiment saisie les macro :?
C'est pour ça que je demande :)
Anonyme

Message par Anonyme »

En gros , la macro n'est pas compilé , mais elle est rajouté à ton code au moment du parsing ( tu m'suis ? )

C'est a dire , si tu écrit cela :

Code : Tout sélectionner

Macro plus()
+
EndMacro

Macro Moins()
-
EndMacro

Debug 1 plus() 3
Debug 1 Moins() 3
la macro n'existe plus au moment de l'execution , elle est remplaçer par la macro appelé , d'ou le fait que l'on ne peut pas avoir de retour comme une procédure.

la macro simplifie la vie du programmeur au niveau de la syntaxe , par exemple :

Code : Tout sélectionner

Macro R(Val)
random(Val)
endmacro

debug R(6500)
R() est remplaçer par Random()...
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

le compilateur remplace ta macro par le code qu'elle contient.

Contrairement à une procédure, le code est dupliqué à chaque fois que tu appelles la macro.

L'avantage ? écrire un truc plus élégamment, te simplifier la vie.

exemples de macros , si tu veux programmer en français

http://www.purebasic.fr/french/viewtopic.php?t=4421
autre exemple
http://www.purebasic.fr/french/viewtopic.php?t=6592
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Message par Ar-S »

encore un p'tit du genre :

Code : Tout sélectionner

Macro mr(S,T)
  MessageRequester(S,T)
EndMacro

mr("coucou","Comment ça va")
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Neosis
Messages : 113
Inscription : dim. 24/févr./2008 20:11

Message par Neosis »

C'est bon je viens de comprendre... "maintenant que j'ai compris je me dit que c'était tout bête :? "
Merci de vos réponses rapide et encore merci d'avoir éclairé ma lanterne !
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

On peut aussi utiliser les macros pour se faire une collection de procédure, comme ça elle ne sont chargées que si on les appelle.
Répondre