23 votes

type de type générique et coulé

<p>Disons que nous avons la méthode générique:<pre><code></code></pre><p>Et nous l’invoquons avec les paramètres suivants:</p><pre><code></code></pre><p>Les résultats sont les suivants :</p><pre><code></code></pre><p>Et</p><pre><code></code></pre><p>Quelqu’un peut-il m’expliquer pourquoi typeof entier moulé pour objet renvoie System.Object, mais . GetType() renvoie System.Int32 ?</p></p>

2voto

Henk Holterman Points 153608
<p>Dans <code></code> , sera . <code></code> <code></code> typeof reflète cela. <p>Mais <code></code> est une méthode virtuelle et s’exécutera à l’exécution sur Int32. </p></p>

1voto

<p>L’appel à GetType est résolu au moment de l’exécution, tandis que le typeof est résolu au moment de la compilation. C’est pourquoi il donne des résultats différents. vous pouvez vérifier ici - <a href="https://stackoverflow.com/questions/11312111/when-and-where-to-use-gettype-or-typeof/11312271">Quand et où utiliser GetType() ou typeof()?</a></p>

0voto

Gagan Deep Points 1042
<p><a href="https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/typeof" rel="nofollow noreferrer">Cela me dit</a> Typeof vous donne le type d’heure de compilation tandis que GetType vous donne le type d’heure d’exécution exacte.</p>

0voto

Patrick Hofman Points 22166
<p>Beaucoup est clairement indiqué lorsque vous laissez de côté l’interférence de type:<p><code></code> est en fait <code></code> .</p><p><code></code> est déduit comme <code></code> .</p><p>Lorsque vous demandez <code></code> , il renvoie <code></code> l’appel que vous avez spécifié dans l’appel de méthode. Vous pouvez également faire <code></code> , qui reviendra sur <code></code> <code></code> .</p><p><code></code> renvoie le type d’exécution réel de l’instance fournie.</p></p>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X