Bonjour,
Voilà ma question est simple
Merci,
Greg
Bonjour,
Voilà ma question est simple
Merci,
Greg
tu ne parlerai pas plutôt de l'opérateur '==' :
Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles
Ok alors changeons de question.
Est-il possible de définir un type Date qui agit comme une string et que je puisse utiliser dans toutes mes classes sans avoir à instancier une classe contenant la propriété Date et sans avoir à hériter.
edit : je connais DateTime mais je voudrais faire mon propre type utilisateur
Greg
Une Classe MyDate proposant que des méthodes static devrait pouvoir faire l'affaire non :
Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles
Ca pourrait mais ce n'est pas vraiment un type.
tu veux pas hériter, ni instancier, peux-tu carrement me décrire le modèle idéal de ce que tu veux car là je ne te comprends plus
Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles
bah par exemple faire comme :
int x;
double y;
mais avec mon type :
greg x;
et donc apres j'agis dessus par :
greg = truc;
un type customisé
C'est pas très clair ton problème.
Il est impossible d'affecter un type avec une quelconque donnée comme tu sembles vouloir le faire avec ton exemple :
avec greg un type Tu ne peux pas non plus le faire avec un type de base tel que double ou int comme tu sembles le penser.
Code : Sélectionner tout - Visualiser dans une fenêtre à part greg = truc;
Essaie de reformuler tes besoins
Je trouve ses besoins assez clair, meme si c'est mal exprimé . Il veut surcharger l'opérateur = c'est tout, comme on peut le faire en C++ de maniere à affecter à un type un autre type qui n'a rien a voir (pas de lien de parenté).
La réponse est non, tu ne peux pas surcherger l'opérateur = en .Net (si l'on en croit ceci : http://www.csharphelp.com/archives/archive135.html . Cela dit ça se comprend vu qu'en .Net la plupart de tes objets sont des types références et pas valeur. Par contre tu peux toujours définir un constructeur de conversion :
Et pour l'utiliser il faut bien sur instancier ta classe :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 class Greg { public Greg(string str) { //conversion de chaine vers Greg } }
Je pense que c'est le mieux que tu puisse obtenir, avec bien sur l'autre méthode proposée qui est d'avoir une méthode static de type Convert dans ta classe Greg :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 string Chaine = "xxxxx"; Greg x = new Greg(Chaine);
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 class Greg { public static Greg Convert(string str) { //ici tu renvoies un nouveau Greg } }
Est-ce que par hasard, ce que tu chercherais à faire ne serait pas une conversion implicite ?
Merci Sphax je pense aussi que ce n'est vraiment pas possible, mais bon je tentais le coup auprès des experts
Merci pour les conversion implicites Wyatan, hop bookmark ça me servira surement sous peu.
Merci pour vos réponses,
Greg
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager