Gambas France BETA


Pas de compte ? Incription

PUBLIC SUB _new() ................ END

1
AuteurMessages
LanoueC#1 Posté le 22/5/2010 à 22:05:00
Bonsoir

Question simple et peut être évidente : Mais a quoi sert

PUBLIC SUB _new()
END

qui est écrit automatiquement à la création d'une nouvelle Form

LanoueC
gambix#2 Posté le 24/5/2010 à 21:49:00
Faire simple !en fait ça ne dépend pas uniquement des formulaire mais de toute les classe
c'est la fonction qui est appelé quand tu fait :

hmyclass = New CMyClass("toto")


'Class CMyClass

Public sub _New(sValue a string)



end
Moins de texte dans une signature c'est agrandir son espace.
Oliv'#3 Posté le 26/5/2010 à 11:32:00
Salut,

pour compléter un peu la réponse de Gambix, il s'agit du constructeur de ta classe. Lors de l'instanciation d'un objet de cette classe, ton constructeur peut servir, par exemple, à "paramétrer" cet objet en initialisant une de ses propriétés si tu lui adresse en paramètre des valeurs (cf exemple de Gambix). Cette "automatisation" peut d'éviter de saisir des lignes de codes après l'instanciation. Celà peut également te permettre de lancer des méthodes de ta classe en les protégeant par PRIVATE puisque du coup pas besoin d'y accéder depuis une autre classe. Tout dépend de tes besoins !

Normalement il existe un destructeur (à priori _free) qui permet de détruire l'objet instancié par une commande new et de libérer avant la fin du programme la mémoire allouée. Mais je n'ai pas réussi à la faire fonctionner. Si Gambix connait la réponse ?? Sinon j'ouvrirai un nouveau post pour ne pas squatter le tien :oops: !!
LanoueC#4 Posté le 26/5/2010 à 13:01:00
merci Oliv et gambix

cela commence à m'éclairer
Mais il est vrai que je ne maitrise pas encore la prog objet cela reste encore flou

Oliv : pas la peine d'ouvrir un autre post, continue si tu en as envie


a plus
LanoueC
Oliv'#5 Posté le 26/5/2010 à 20:38:00
Merci LanoueC,

mais en regardant un peu mieux dans le forum, j ai trouvé la réponse ou du moins une réponse :

MonObjet = NULL

A l'issue, un MonObjet IS MaClasse renvoie un false donc destruction OK !!
1