CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[C#] Connaitre le nom d'une instance

[Deamons]
[Deamons]
Niveau 6
09 février 2013 à 15:49:48

Salut,

J'aimerai savoir si c'était possible pour un objet donné de connaître son nom ? :(

Par exemple , si j'ai dans un programme ce bout de code :

ObjetQuelconque item = new ObjetQuelconque(1,2,3,4);

Est ce que l'objet peut connaitre son nom ? (En l’occurrence ici, ce serait "item").

Merci ! :-)

Triplepied
Triplepied
Niveau 8
09 février 2013 à 15:57:40

Dans quel but tu aurais besoin de ça ? :(

Aldebran
Aldebran
Niveau 10
09 février 2013 à 17:45:47

La méthode la plus propre pour faire ça, c'est de stocker manuellement le nom de la variable dans l'instance de la classe en modifiant le constructeur pour qu'il soit du genre :

ObjetQuelconque item = new ObjetQuelconque("item", 1,2,3,4);

Sinon, il ne me semble pas que ce soit possible de récupérer ce nom autrement. Il n'y a pas de fonctions GetName() qui te retournerait le nom utilisé pour faire référence à ta variable, tout simplement car une fois le bytecode C# compilé, ce nom n'existera plus.

Mais précise nous quand même ce que tu veux faire, car il existe sûrement un moyen plus propre de le faire :)

[Deamons]
[Deamons]
Niveau 6
09 février 2013 à 18:30:12

Triplepied :d) Dans le cadre d'un projet XNA, je nomme mes ressources (images, sons, ...) avec le même nom d'instance :

Texture2D personnage = Content.Load<Texture2D>("personnage");

Dans mon cas j'utilise une classe mère qui s'occupe de charger les textures de tous ses fils, ce qui nécessite l'utilisation d'un paramètre, et qui interdit donc de faire quelque chose du style :

foreach(Sprite sprite in this.Components) sprite.LoadContent();

Vu que le nom d'asset est obligatoire ... :(

Pseudo supprimé
Pseudo supprimé 10 février 2013 à 18:02:30

En gros, tu cherches juste à faire un dictionnaire de textures ? Il y a les tables de hachage pour ça.

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment