Maison > développement back-end > C++ > Comment puis-je convertir ou convertir des objets en types génériques en C# ?

Comment puis-je convertir ou convertir des objets en types génériques en C# ?

Mary-Kate Olsen
Libérer: 2025-01-05 11:13:42
original
546 Les gens l'ont consulté

How Can I Cast or Convert Objects to Generic Types in C#?

Casting de variables à l'aide de variables de type générique

En programmation C#, il est possible de convertir des variables de type objet en variables d'un type générique T , où T est défini dans une variable Type. Voici comment cela fonctionne :

La méthode générique CastObject prend un objet en entrée et le convertit en une variable de type T à l'aide d'une simple expression de conversion, comme ceci :

public T CastObject<T>(object input) {   
    return (T) input;   
}
Copier après la connexion

La méthode générique ConvertObject effectue une conversion au lieu d'une conversion directe. Il utilise la méthode Convert.ChangeType pour convertir l'objet d'entrée en type générique spécifié, offrant plus de flexibilité lors de la conversion entre des types incompatibles :

public T ConvertObject<T>(object input) {
    return (T) Convert.ChangeType(input, typeof(T));
}
Copier après la connexion

Par exemple, étant donné une valeur d'objet1 avec une valeur décimale, la conversion vers un int à l'aide de la méthode ConvertObject entraînera une valeur entière :

Type intType = typeof(Int32);
object value1 = 1000.1;

int value2 = Convert.ChangeType(value1, intType); // value2 will be 1000
Copier après la connexion

Il est important de noter que le casting et la conversion peuvent entraîner des exceptions d'exécution si le type de cible n'est pas compatible avec le type de source. Il est toujours crucial de gérer les opérations de typage avec soin et de garantir le résultat attendu.

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
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