La difference entre Public et Private

Messages postés
176
Date d'inscription
mardi 7 octobre 2003
Statut
Membre
Dernière intervention
9 mai 2008
- - Dernière réponse : cs_Linuss
Messages postés
176
Date d'inscription
mardi 7 octobre 2003
Statut
Membre
Dernière intervention
9 mai 2008
- 15 avril 2004 à 15:42
Je c, je suis 1 nb.
Mais ki n'essaie rien n'a ri1.
Alors, éske qq pourrait m'expliquer la difference entre la fonction "Public" et "Private" ???
ET éventuellement a koi ca sert et ds kels cas ???

:blush)

Merci.......
Afficher la suite 

6 réponses

Meilleure réponse
Messages postés
4066
Date d'inscription
mardi 13 mai 2003
Statut
Modérateur
Dernière intervention
23 décembre 2008
18
1
Merci
une procédure ou une fonction Private ne peut être appelée que depuis le module où elle est codée.

une procédure ou une fonction Public peut être appelée de partout.

Ex :
======== Module1.bas ==========
Private Function Sinus(X As Double) As Double
Sinus = Sin(X)
End Function

Public Function Cosinus(X As Double) As Double
Cosinus = Cos(X)
End Function
============================

======== Module2.bas==========
Private Function Tangente(X As Double) As Double
Tangente = Tan(X)
End Function

Public Function Carre(X As Double) As Double
Carre = X*X
End Function

Public Sub Test()
Dim x as Double
Dim y as Double
Dim z as Double
Dim t as Double

x=Module1.Sinus(10) 'IMPOSSIBLE
y=Module1.Cosinus(20) 'POSSIBLE
z=Tangente(30) 'POSSIBLE
t=Carre(40) 'POSSIBLE
End Sub



Manu

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 200 internautes nous ont dit merci ce mois-ci

Messages postés
82
Date d'inscription
lundi 23 décembre 2002
Statut
Membre
Dernière intervention
23 août 2005
0
Merci
salut

public et private servent à definir la "visibilité" d'une variable
d'une constante ou d'une fonction/procedure

imagine que tu as un form et un module

dans ton module si tu defini une fonction private (private funstion....) tu ne pourra l'utiliser que dans ce module,
si tu la definis public tu pourra y acéder depuis, par exemple,
ta form (enfin depuis le code de la form)

en espérant que ce soit clair

++
Messages postés
82
Date d'inscription
lundi 23 décembre 2002
Statut
Membre
Dernière intervention
23 août 2005
0
Merci
salut

public et private servent à definir la "visibilité" d'une variable
d'une constante ou d'une fonction/procedure

imagine que tu as un form et un module

dans ton module si tu defini une fonction private (private funstion....) tu ne pourra l'utiliser que dans ce module,
si tu la definis public tu pourra y acéder depuis, par exemple,
ta form (enfin depuis le code de la form)

en espérant que ce soit clair

++
Messages postés
82
Date d'inscription
lundi 23 décembre 2002
Statut
Membre
Dernière intervention
23 août 2005
0
Merci
pris de cours et petit bug...oups
Messages postés
4066
Date d'inscription
mardi 13 mai 2003
Statut
Modérateur
Dernière intervention
23 décembre 2008
18
0
Merci
C'est valable aussi pour des variables définies dans un module.

Intérêt : permettre à des utilisateurs extérieurs d'utiliser "correctement" ton code. Ca empêche l'accès à des variables qu'il serait dangereux (ou interdit) de manipuler, ...

Ex : les procédures _Click sont toujours en Private car il serait dangereux de les appeler depuis un formulaire différent.

C'est pas interdit de les mettre Public, mais çà évite de faire des conneries d'inattention.

Manu
Messages postés
176
Date d'inscription
mardi 7 octobre 2003
Statut
Membre
Dernière intervention
9 mai 2008
0
Merci
Merci les gars :big)
Vous inkiétez pô, vos explications étaient très claires et merci encore !