2009-05-27 2 views

Répondre

-1

J'ai entendu des plaintes à ce sujet, je ne crois pas une option qui peut être changé.

-1

Voulez-vous dire la classe elle-même ne sont pas disponibles dans les autres classes? Ou voulez-vous dire que tout le contenu du fichier par défaut à un accès privé? Si vous voulez que la classe soit visible dans d'autres classes, vous devez juste vous assurer que l'espace de noms est visible dans l'autre classe (avec le mot-clé "using" dans C#, ou juste les avoir dans le même espace de noms) .

Je ne sais pas de quelle langue vous parlez, mais dans C# toutes les méthodes, les variables membres, les propriétés, etc. sont privées. Si vous voulez qu'ils soient publics, vous devez les spécifier individuellement pour chaque membre. Je ne pense pas qu'il soit possible de changer ce comportement en C#.

1

Il existe d'autres problèmes avec les modèles de code par défaut - par exemple, ils ne sont pas compatibles avec StyleCop prêt à l'emploi, car les lignes "using" sont en dehors de la déclaration d'espace de noms.

Vous pouvez utiliser ReSharper pour créer vos fichiers de classe à partir de modèles, ce qui vous permet de placer le code que vous voulez dans le modèle. C'est ce que je fais :)

11

Par défaut, une classe sans spécificateur d'accès est interne et un membre est privé par défaut. Ceci maintient la visibilité aussi limitée que possible et augmente ainsi l'encapsulation.

Faire une nouvelle classe publique sans même y penser brise l'idée même de l'encapsulation.

Le modèle de classe que VS utilise pour créer une nouvelle classe se trouvent dans ce fichier zip (en cas de CSharp):

C: \ Program Files \ Microsoft Visual Studio 8 \ Common7 \ IDE \ ItemTemplates \ CSharp \ 1033 \ Class.zip ou C: \ Program Files \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ ItemTemplates \ CSharp \ Code \ 1033 lors de l'utilisation de VS Orcas

Ouvrez le fichier zip, ajoutez le mot-clé public, enregistrez et vous avez terminé. Chaque fois que vous ajoutez un cours, il sera public. J'espère que cela t'aides.

Source

+0

Doh! tu es trop rapide! –

+0

D'accord, c'était QUICK !!!! Bonne réponse. – Skittles

+0

........ ;-) Merci – Shoban

-1

Je ne pense pas que vous pouvez changer une option dans VS afin que toutes les classes créées sont publiques par défaut (mais je vais examiner.)

Je pense que, à moins que vous avez un besoin très spécifique que toutes vos classes soient déclarées publiques (et je ne peux penser à aucune) que vous devriez laisser le défaut tel quel. Cela vous permet de prendre des décisions sur les classes qui sont publiques et celles qui doivent rester internes. À mon avis, une bonne option de conception dicterait que les classes soient déclarées 'internes' par défaut.

Questions connexes