2008-12-03 7 views
2

Voici un puzzle intéressant.Quelle est la particularité de HashSet <T> dans .NET 3.5?

J'ai téléchargé Snippet compilateur pour essayer quelques trucs, et je voulais écrire le code suivant:

using System; 
using System.Collections.Generic; 

public class MyClass 
{ 
    public static void RunSnippet() 
    { 
     HashSet<int> h = new HashSet<int>(); 
    } 
} 

Mais le code ci-dessus ne compile pas. Je reçois:

"Le type ou le nom namespace 'HashSet' est introuvable (? Il vous manque un avec la directive ou un ensemble référence)"

Il est clair que je ne suis pas . Il semble qu'il ne peut pas trouver HashSet, mais il trouve d'autres types dans l'espace de noms Systems.Collections.Generic (par exemple List, SortedDictionary).

Quelle est l'explication à cela? Presumeably Snippet Compiler utilise simplement le compilateur Framework standard sous les couvertures ...

Je serais intéressé de savoir pourquoi cela ne fonctionne pas.

+0

IMPRESSIONNANT! SnippetCompiler for 3.5 est sorti! Je n'aurais jamais vérifié si je n'ai pas vu ta question! – Will

+0

Content de vous aider en posant des questions stupides! :) –

Répondre

4

Vérifiez quelle version de System.Core.dll Snippet Compiler utilise.

+0

Juste téléchargé et vérifié. Ne semble pas inclure System.Core par défaut dans Snippet Compiler Live Ultimate 2008 Édition Super Secret Plus Plus Gold avec Enhanced Extra Stuff pour les développeurs .... Ajout de la référence permet de compiler. – tvanfosson

+1

ok. Je plaisantais surtout sur le nom. – tvanfosson

5

est votre utilisation de référence

Espace de noms: System.Collections.Generic

Assemblée: System.Core (en System.Core.dll)

version 3.5?

Questions connexes