75 votes

Que signifie "T" en C #?

Doublon de:
Ce sont Génériques et Collections en C#?

J'ai un arrière-plan VB et je suis à la conversion de C# pour mon nouveau poste. Je suis aussi en essayant de devenir meilleur .NET en général. J'ai vu le mot-clé "T" beaucoup utilisé dans les échantillons de personnes post. Que signifie le "T" signifie en C#? Par exemple:

public class SomeBase<T> where T : SomeBase<T>, new()

Qu'est - T ? Pourquoi voudrais-je utiliser?

51voto

user39603 Points 1339

C'est un symbole pour un paramètre de type générique . Cela pourrait tout aussi bien être autre chose, par exemple:

 public class SomeBase<GenericThingy> where GenericThingy : SomeBase<GenericThingy>, new()
 

Seul T est celui par défaut utilisé et encouragé par Microsoft.

46voto

Rob Walker Points 25840

T n'est pas un mot clé en soi, mais un espace réservé pour un type générique. Voir Introduction aux génériques de Microsoft

La syntaxe équivalente de VB.Net serait:

 Public Class SomeBase(Of T As {Class, New}))
 

16voto

biozinc Points 2760

Un bon exemple d’un autre nom utilisé au lieu de T would soit les classes de la table de hachage, par exemple

 public class Dictionary<K,V> ...
 

K représente la clé et V valeur. Je pense que T synonyme de type.

Vous avez peut-être vu cela autour. Si vous pouvez établir la connexion, cela devrait être assez utile.

6voto

Vilx- Points 37939

Que serait un "Générique". Comme les gens l'ont déjà mentionné, il y a un Microsoft explication du concept. Quant à savoir pourquoi le "T" - voir à cette question.

En un mot, il vous permet de créer une classe/méthode qui est spécialisé pour un type spécifique. Un exemple classique est l' System.Collections.Generic.List<T> classe. C'est le même que System.Collections.ArrayList, sauf qu'il vous permet de stocker seul élément de type T. Cette offre de sécurité de type - vous ne pouvez pas (accidentellement ou non) de mettre des articles de type incorrect dans votre liste. L' System.Collections.Generic de l'espace de noms contient plusieurs autres différents types de collection qui fait usage de cette.

Pour savoir où vous pouvez l'utiliser - c'est à vous. Il y a beaucoup de cas d'utilisation qui viennent de temps à autre. Surtout que c'est une sorte de self-made-collection (lorsque le builtin ne suffit pas), mais il pourrait vraiment être quelque chose.

4voto

Yossi Dahan Points 3697

Le meilleur moyen serait de vous familiariser avec les "génériques", de nombreuses ressources sur le Web, en voici un

T n'est pas un mot clé mais un nom, pourrait être quelque chose de vraiment pour autant que je sache, mais T est la convention (lorsqu'un seul type est nécessaire, de coruse)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X