Maison > développement back-end > C++ > Structs vs classes en C #: Quand devriez-vous choisir lequel?

Structs vs classes en C #: Quand devriez-vous choisir lequel?

DDD
Libérer: 2025-02-01 04:21:07
original
794 Les gens l'ont consulté

Structs vs. Classes in C#: When Should You Choose Which?

Quand la structure (structure) et la classe (classe)

En C #, lors de la sélection de la structure ou de la classe, veuillez considérer les principes suivants:

Quand utiliser la structure:

Ce type représente une seule valeur, similaire aux types de base (par exemple, le numéro de point flottant entier et double provision).

    La taille de l'exemple est inférieure à 16 octets.
  • C'est le même (il ne peut pas être modifié après la création).
  • Il ne sera pas en boîte fréquemment (converti en type de référence).
  • Quand utiliser la classe:

Ce type représente des structures de données multiples ou complexes.

La taille est supérieure à 16 octets.
  • Il doit être modifié après la création.
  • Il emballera ou passera fréquemment en tant que paramètre de référence.
  • Position de Microsoft
Microsoft recommande que la structure soit utilisée pour les petits, généralement un court exemple, ou les cas intégrés dans d'autres objets. Cependant, ils avertissent également qu'à moins qu'ils ne respectent toutes les caractéristiques ci-dessus, ne définissez pas la structure.

Exemple

La classe

de .NET Framework

utilise la structure interne comme type

et . Ces structures suivent les principes ci-dessus car ils:

indique une seule valeur (paire de valeurs de clé et état d'énumérateur). Dictionary<TKey, TValue> Entry très petit (moins de 16 octets). Enumerator

est le même (après la création, leurs données ne peuvent pas être modifiées).
  • Évitez l'emballage fréquent (ils sont principalement utilisés en interne).
  • Quand Microsoft enfreint les règles
  • Malgré ces principes d'orientation, les structures internes de Microsoft violent souvent les règles de taille et d'invariance. Il s'agit de donner la priorité à la vitesse et à l'efficacité, car l'instance de la structure et du rapport de rapport de vitesse est plus rapide. Cependant, ces exceptions doivent être traitées pour éviter les accidents.
Autres précautions

Lorsque la structure est implémentée, ce sera un type de référence lorsqu'il est converti en interface.

doit traiter le type de valeur responsable pour éviter la copie accidentelle ou la modification.

Les avantages de performance de la structure se reflètent principalement dans le scénario impliquant un grand nombre ou une création et un accès fréquents à de petits éléments de données.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal