Bonjour,
Voilà ma question est simple :)
Merci,
Greg
Version imprimable
Bonjour,
Voilà ma question est simple :)
Merci,
Greg
tu ne parlerai pas plutôt de l'opérateur '==' :?:
hum non non de =
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 :?:
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 :koi:
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 8O Tu ne peux pas non plus le faire avec un type de base tel que double ou int comme tu sembles le penser.Code: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:
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:
1
2
3 string Chaine = "xxxxx"; Greg x = new Greg(Chaine);
Code:
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