Code : Tout sélectionner
Macro guillemet
"
EndMacro
Macro Affiche(M1,M2); j'aimerais avoir au moins un espace entre M1 et M2
Debug guillemet M1 M2 guillemet
EndMacro
Affiche(ça,colle)

Code : Tout sélectionner
Macro guillemet
"
EndMacro
Macro Affiche(M1,M2); j'aimerais avoir au moins un espace entre M1 et M2
Debug guillemet M1 M2 guillemet
EndMacro
Affiche(ça,colle)
Code : Tout sélectionner
Macro guillemet
"
EndMacro
Macro espace
"+" "+"
EndMacro
Macro Affiche(M1,M2); j'aimerais avoir au moins un espace entre M1 et M2
Debug guillemet M1 espace M2 guillemet
EndMacro
Affiche(ça,colle)
Code : Tout sélectionner
Macro Action(Fonc,Typ)
Procedure.Typ Fonc()
EndMacro
Action(Sauter,POINT)
Code : Tout sélectionner
XIncludeFile #PB_Compiler_Home+"Class\MacroSpecialClass.pbi"
;{- Class Personne
Class(Personne);{
nom.s
prenom.s
age.b
C_(Personne)( nom.s, prenom.s, age.b ) ; Constructeur de la class Personne
Affiche.s()
Reset()
EndClass(Personne);}
Constructor(Personne), nom.s, prenom.s, age.b );{
*This\nom = nom
*This\prenom = prenom
*This\age = age
EndConstructor(Personne);}
Methode(Personne,Affiche,s));{
ProcedureReturn *This\prenom + " " + *This\nom + " " + Str(*This\age) + " ans"
EndMethode(Personne,Affiche);}
Methode(Personne,Reset));{
*This\nom = ""
*This\prenom = ""
*This\age = 0
EndMethode(Personne,Reset);}
;}
Code : Tout sélectionner
XIncludeFile #PB_Compiler_Home+"Class\Personne_Class.pbi"
New(maPersonne, Personne)("Dupond","Jean",43)
; Accès direct aux attributs de l'occurrence en mettant une étoile devant le nom
Debug *maPersonne\prenom
Debug maPersonne\Affiche()
*maPersonne\prenom = "Pierre"
Debug maPersonne\Affiche()
maPersonne\Reset()
Debug maPersonne\Affiche()
Oh oui, sa serai nikel une POO standardisée pour PureBasic, car sa apporte énormement de simplicitéeerix14 a écrit :Si un ensemble de personnes est intéressé pour étendre cette "normalisation" à l'ensemble du forum
Je parlais non seulement du temps à coder ses fonctions : GetX(), SetX(val), GetY(), SetY(val), etc. Mais aussi, de l'énorme baisse de performance que cela implique... Surtout pour des applications 3D.Dr.Dri a écrit :Dans ce cas passe par une macro, transparent pour l'utilisateur sans les inconvénients des fonctions (ca doit pouvoir se bidouiller nan ?)