Friend Function [Résolu]

NeriXs 101 Messages postés lundi 4 mai 2015Date d'inscription 11 janvier 2018 Dernière intervention - 15 juin 2015 à 20:12 - Dernière réponse : NeriXs 101 Messages postés lundi 4 mai 2015Date d'inscription 11 janvier 2018 Dernière intervention
- 17 juin 2015 à 22:08
Bonjour,

Pourriez-vous m'expliquer quel contexte fait qu'une fonction peut être déclarée comme "Friend" ?

il semble que ce soit en quelque sorte pour en limiter l'accès ! Mais, ce n'est pas très claire.
Afficher la suite 

Votre réponse

8 réponses

NHenry 14262 Messages postés vendredi 14 mars 2003Date d'inscriptionModérateurStatut 22 septembre 2018 Dernière intervention - 15 juin 2015 à 20:36
0
Merci
en VB6 l'usage de l'accès Friend à une méthode est réservée aux modules de classes.
Cela permet de dire "publique, mais uniquement dans le projet".
Cela permet entre autre de pouvoir déclarer une méthode d'une classe comme pouvant prendre en paramètre une structure déclarée dans un module (de base).
Commenter la réponse de NHenry
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - 15 juin 2015 à 20:40
0
Merci
Bonjour,
Il me semble que l'aide VB6 est parfaitement claire en ce qui concerne ce point.
Que n'en comprends-tu donc pas, exactement ?
En te rappelant qu'une déclaration Frien ne peut être faite qu'au sein d'un module de classe.
De mon aide (version anglaise) ===>>
Optional. Used only in a class module. Indicates that the Function procedure is visible throughout the project, but not visible to a controller of an instance of an object.

Clair, en ce qui me concerne !
Commenter la réponse de ucfoutu
NeriXs 101 Messages postés lundi 4 mai 2015Date d'inscription 11 janvier 2018 Dernière intervention - 15 juin 2015 à 21:09
0
Merci
Si l'explication comme le dit ucfoutu est claire, la mise en ouvre l'est moins!
La deuxième partie de réponse de NHenry:
"Cela permet entre autre de pouvoir déclarer une méthode d'une classe comme pouvant prendre en paramètre une structure déclarée dans un module (de base)"
apporte un petit plus mais, j'ai du mal a projeter un cas de figure nécessitant sont utilisation.
Commenter la réponse de NeriXs
NeriXs 101 Messages postés lundi 4 mai 2015Date d'inscription 11 janvier 2018 Dernière intervention - 15 juin 2015 à 21:13
0
Merci
j'aurais utilisé une déclaration "public" si je n'étais pas tombé dessus !!!
Commenter la réponse de NeriXs
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - Modifié par ucfoutu le 16/06/2015 à 01:22
0
Merci
exemple commenté (de l'aide de VB) :
Friend, exemple
Lorsqu'il est placé dans un module de classe, le code suivant met la variable membre dblBalance à la disposition de tous les utilisateurs de la classe du projet. Tout utilisateur de la classe peut récupérer cette valeur ; seul le code situé à l'intérieur du projet peut affecter une valeur à cette variable.

Private dblBalance As Double

Public Property Get Balance() As Double
Balance = dblBalance
End Property

Friend Property Let Balance(dblNewBalance As Double)
dblBalance = dblNewBalance
End Property


Cette variable échappera donc au contrôle exercé, dans un groupe de projets, depuis un projet autre que celui qui utilise cette classe.


________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
Commenter la réponse de ucfoutu
NeriXs 101 Messages postés lundi 4 mai 2015Date d'inscription 11 janvier 2018 Dernière intervention - 16 juin 2015 à 06:47
0
Merci
OK, merci pour ce complément!
A propos de l'aide VB!
Celle-ci est elle encore trouvable?
Je n'ai rien sur mon CD "VB6 entreprise".
Commenter la réponse de NeriXs
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - Modifié par ucfoutu le 16/06/2015 à 06:57
0
Merci
Si tu n'as "rien sur ton CD VB6 Entreprise", c'est qu'il est probablement "tombé du camion" (hé hé) ou que tu n'as pas chargé l'aide (MSDN) au moment de l'installation de VB6 (en te signalant que VB6 est distribué en 2 CD et non un seul)
S'il est "tombé du camion", utilise Google : ===>> recherche avec MSDN VB6 ===>> tu y trouveras des sites (je ne veux en "cautionner" aucun) qui proposent le téléchargement gratuit de cette MSDN (sans laquelle nul, même parmi les plus avancés, ne saurait valablement développer).

________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
Commenter la réponse de ucfoutu
NeriXs 101 Messages postés lundi 4 mai 2015Date d'inscription 11 janvier 2018 Dernière intervention - 17 juin 2015 à 22:08
0
Merci
Bonjour,

4 CD"s" en tout!
1 CD = Visual Studio entreprise 6.0.
2 CD = MSDN Library
1 CD = Mastering

1 BooK

Le tous officiel avec licences :)

facture du 03/04/1997 Déjà !!!!

C'est tous bon pour l'aide merci.
Commenter la réponse de NeriXs

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.