J'ai donc rencontré un cas où j'ai une classe qui peut stocker une chaîne ou une valeur numérique, et je veux qu'une seule propriété renvoie l'une ou l'autre (ce serait un échec pour que les deux soient définis) . J'utilise une classe générique personnalisée pour gérer les valeurs numériques (donc je peux utiliser signed, unsigned, et nullables), et je vais stocker la chaîne dans une variable séparée.Est-il possible pour une propriété publique de renvoyer une chaîne OU une entrée numérique en utilisant 'Object'?
En théorie, si une surcharge pouvait se faire en fonction du type de retour, je pourrais le faire assez facilement. Mais .NET interdit actuellement cela. Je me demande donc s'il existe une autre astuce vraiment hors de portée (en dehors de la génération MSIL via Reflection.Emit) qui pourrait accomplir la même chose. Je suis ouvert aux idées via les délégués, le déréférencement des pointeurs, les génériques, les rites mystiques, etc. Je m'intéresse également à toutes les pensées ou avantages/inconvénients de telles possibilités comme outil d'apprentissage. Si l'utilisation d'un objet standard est la seule façon de réaliser ce que je veux, alors ça me convient. Mais il est difficile de trouver le bon ensemble de mots-clés pour traquer ce genre de fonctionnalités sur Google, alors j'ai pensé que je demanderais ici avant de passer à autre chose sur le projet.
Oui, c'est ce que je pense être ma seule option saine. Je me suis rendu compte qu'avec tout le fancissement que .NET a, qu'il ne serait pas du domaine des possibilités pour le compilateur de travailler avec de telles propriétés et être capable de savoir quelle propriété surchargée spécifique a été appelée. J'apprends toujours les différents noms/mots-clés de fonctionnalités .NET spécifiques, donc je m'assure que je ne manque pas quelque chose. – Kumba