Comment ajouter mon propre type de données en C#?
Comme "int" se réfère à "Int32" catégorie", "chaîne" se réfère à une "Chaîne" de la classe. Comment faire référence à un type de données comme "abc" à mon "Abc" de la classe?
pourquoi est-ce que tu veux faire?
Le blé peut-être d'avoir une police bleue dans VS 😉
pour faire un type de données qui est disponible pour d'autres programmeurs utilisé ma classe.
Donnez à votre classe un nom correct pour commencer...Une classe EST un type de données!
Comment ce faire beaucoup de upvotes et favoris? Il ne fait pas de sens...
Le blé peut-être d'avoir une police bleue dans VS 😉
pour faire un type de données qui est disponible pour d'autres programmeurs utilisé ma classe.
Donnez à votre classe un nom correct pour commencer...Une classe EST un type de données!
Comment ce faire beaucoup de upvotes et favoris? Il ne fait pas de sens...
OriginalL'auteur chanchal1987 | 2010-07-19
Vous devez vous connecter pour publier un commentaire.
Votre "classe" est un type de données.
Les exemples que vous donnez sont la différence entre le type de données CLR noms et C# de type de données de noms. Ils sont des alias. C# int cartes CLR Int32 et C# string cartes CLR Chaîne.
Vous pouvez créer vos propres alias à l'aide de "l'aide Xyx=Abc". Vous devez le faire dans chaque fichier source, de sorte qu'il n'est pas très utile.
Mais visual studio détecte ma classe comme une "classe" et colorée comme une classe. Mais les types de données de couleur différente dans Visual Studio.
Incorrect. Toutes les classes sont des types de données. VS souligne C# mots réservés en bleu foncé et tous les autres types de données en bleu pâle. Le bleu foncé de souligner, c'est rien à voir avec une différence entre les classes et les types.
vous avez eu raison!!!
OriginalL'auteur Philip Smith
Vous pouvez ajouter un alias comme ceci:
Mais je voudrais vous demander pourquoi vous voulez le faire.
[Une autre affiche a souligné une utilisation valide, à savoir le type d'espace de noms des affrontements, mais alors je serais toujours utiliser pleinement qualifié du nom du type de autrement, cela pourrait devenir très déroutant.]
aye, c'est effrayant! Surtout depuis que je ne ferais jamais ça! lol!
Supposons que je veux donner à ma classe à d'autres programmeurs. Si je fais ma Classe comme un type de données, puis ils peuvent facilement comprendre et de l'utiliser comme un type de données simple. Merci pour votre réponse.
Philip Smith a souligné, votre classe personnalisée est un type de données, et ses membres deviennent accessibles par le biais de ce contexte.
il y a longtemps, mais la réponse au "POURQUOI" est la suivante: Global définir un type de données comme
C
pour changer rapidement le type. e.g:DBKey = System.UInt32
ouDBKey = System.UInt64
... ouDBKey=System.Int32
OriginalL'auteur Mitch Wheat
Je ne suis pas sûr de ce que l'avantage de ce serait, il est généralement utilisé si vous trouvez différents types avec le même nom.
OriginalL'auteur fletcher
Vous êtes complètement à l'incompréhension de ce qu'un "type de données". En C#, des mots-clés comme
int
,string,
etc. sont tout simplement des alias pour les types correspondants (implémentée par les classes/les structures) déjà présent dans le CLR. Par exemple,int
a exactement le même sens queSystem.Int32
, qui est une structure définie par le cœur de l' .NET framework. De même,string
signifie simplementSystem.String
, qui est une classe..NET, chaque "type de données" par la suite, hérite de
System.Object
(qui est un alias commeobject
en C#). Les types de données que vous consultez sont tout simplement pré-mise en œuvre des classes et les structures qui héritent deSystem.Object
; il n'y a rien de spécial à leur sujet. Vous devez prendre conscience que C# ne sont pas spécialement les types primitifs de la même manière que les autres langues ne sont qu'une partie d'un type commun de la hiérarchie. Les mots clés que vous avez l'habitude de simplement sont fournis à titre de commodité.En essence, ne vous inquiétez pas à ce sujet. Vos classes peuvent être utilisées comme ils sont, et ce est la façon dont ils sont censés être utilisés.
Un peu de lecture:
OriginalL'auteur Will Vousden
de type int, etc sont à construire dans les types /mots clés réservés. Ceux-ci sont définis par le compilateur, il n'est donc pas possible d'ajouter vos propres.
pas mon downvote btw
OriginalL'auteur Laurens Ruijtenberg
La fonction que vous cherchez est probablement quelque chose que vous êtes habitué à partir de C++. Il n'y a pas de concept équivalent en C#. Tout ce que vous avez sont les builtin type de données. La seule chose que vous pouvez déclarer est vous propre classe ou structure, mais pas de type de données.
OriginalL'auteur Johann Strydom
il n'y a aucun moyen de définir des types de données en c#
j'ai le même problème et j'ai cherché la solution, sans succès
dans mon cas, j'ai besoin de définir un type de données pour les types non gérés comme MarshalAs(UnmanagedType.LPWStr)]
OriginalL'auteur dawood karimy