Bonjour,
je cherche à mieux comprendre l'environnement .NET.
Je m'interroge sur le stockage en mémoire et la taille des zones mémoires occupées par les variables utilisées en .NET.
On distingue deux sortes de types: les types valeurs stockés dans la pile et les types références stockés dans le tas.
Le type valeur int est-il représenté sur 32 bits pour les proc 32 bits et sur 64 bits pour les proc 64 bits ?
Avec l'instruction suivante:
Code c# : Sélectionner tout - Visualiser dans une fenêtre à part MyObject obj = new MyObject();
j'instancie la classe MyObject et la référence est mémorisée par la variable obj car obj une variable de type référence.
Quel est le mécanisme réalisé en mémoire ?
Je suppose que l'objet instance de MyObject est stocké en mémoire et que la taille de cet zone mémoire dépend de l'objet.
Je suppose aussi que la variable obj contient l'adresse de l'objet instancié, mais quelle est la taille de la zone mémoire occupé par cette variable ?
La classe MyObject est défini comme suit:
Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 class MyObject { public int maVar; }
La variable maVar est d'un type valeur mais je suppose que cette variable n'est pas stockée dans la pile mais dans le tas.
Quelle est l'adresse de cette variable ? Est-elle liée à l'adresse de l'instance ?
Je vous remercie par avance pour vos réponses.
Menoto.
Partager