2010-05-05 4 views
15

Que fait le modificateur 'friend' dans VB.NET?VB.NET: que fait le modificateur 'friend'?

Pourquoi est-il le modificateur par défaut pour les composants graphiques dans Visual Studio?

+14

Cela me rappelle la citation, "C++: Où vos amis peuvent voir vos proches." – kwatford

Répondre

27

friend dans VB.Net est identique à internal en C#, cela signifie qu'il peut être accédé n'importe où dans le même assemblage, mais pas à partir d'autres assemblages.

Je pense que c'est un défaut par défaut car je dirais que normalement un assemblage ne devrait pas utiliser les contrôles de l'interface graphique d'un autre assemblage (sauf s'il s'agit d'une bibliothèque de classes ou similaire).

+4

J'irais plus loin et dirais que 'Private' serait un meilleur modificateur par défaut. L'accès direct aux commandes GUI d'un autre objet est une mauvaise pratique et conduira à un code étroitement couplé difficile à modifier. – MarkJ

+0

Eh bien, je ne suis pas en désaccord sur les meilleures pratiques, mais je suppose que c'est par défaut à un ami pour le rendre plus facile pour les débutants pour commencer ou quelque chose comme ça. –

8

ami est disponible en VB: Le mot-clé ami (Visual Basic) dans l'instruction de déclaration précise que les éléments sont accessibles à partir du même ensemble, De here

Je crois que la version C# est Internal