Maison > développement back-end > C++ > Casting en C #: Quand utiliser 'comme' vs casting explicite?

Casting en C #: Quand utiliser 'comme' vs casting explicite?

Mary-Kate Olsen
Libérer: 2025-02-01 09:36:10
original
921 Les gens l'ont consulté

Casting in C#: When to Use 'as' vs. Explicit Casting?

La conversion de type dans le CLR et le mot-clé 'AS'

Dans la programmation orientée objet, la conversion de type d'objet est un fonctionnement commun. CLR fournit deux méthodes de conversion principales: «As» Mots-clés et conversion explicite.

' As 'Mot-clé

'As' Conversion du type d'exécution de mots clés, Successeur renvoie l'objet de conversion et ne revient pas Null. Il est généralement utilisé pour convertir des objets en sous-classes spécifiques ou implémentations d'interface. Par exemple:

Si «obj» est une instance de «myClass», le composant «en tant que« renvoiera une référence à l'objet «myClass»;

object obj = new MyClass();
MyClass cls = obj as MyClass;
Copier après la connexion
<式> Conversion différentielle

Exprimez l'utilisation de la grammaire . Convertissez l'objet en un type spécifié, et la conversion n'est pas valide et lancez une exception. Par exemple:

La conversion expressive peut entraîner des erreurs d'exécution lorsque le type d'objet de conversion ne correspond pas. (cast-type)

<能> Considérations de performance
object obj = new MyClass();
MyClass cls = (MyClass)obj;
Copier après la connexion

En général, les mots clés «en tant que» sont plus sûrs car il renvoie NULL lorsque la conversion ne parvient pas à éviter les erreurs d'exécution. Ce n'est que lorsque la conversion est réussie et que les performances sont importantes que la conversion doit être utilisée.

Différences sémantiques

La principale différence entre les deux méthodes est: «As» Type d'objet de vérification des mots clés, et la conversion est invalide et renvoie Null; Cette différence est importante lorsque le type d'objet est incertain (comme utiliser la réflexion).

Méthode recommandée

Il est généralement recommandé d'utiliser 'comme' mots clés au lieu d'une conversion explicite. Il est plus sûr et la perte de performance n'est pas significative. Il est particulièrement utile lorsque le type d'objet est des changements pré -undown ou dynamiques.

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!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal