Vítejte na blog.vyvojar.cz Přihlásit | Registrovat | Pomoc
Titulní Blogy Fotky Soubory

René Stein

Názory vzešlé z mesaliance humanitní skepse a technologického optimismu

Prezentace a příklady z přednášky o C# 2.0

Uvolnil jsem prezentaci a příklady ze včerejší přednášky o C# 2.0

Stažení prezentace, velikost 313 KB

Stažení příkladů (testovány na prosincovém CP buildu VS.NET), velikost 170 KB

Protože při diskuzi zazněl zajímavý dotaz na téma dynamického vytváření uzavřeného konstruovaného generického typu pomocí reflection, přidal jsem další příklad, který ukazuje, že máme v C# (a v .Net Frameworku obecně) i za běhu aplikace k dispozici všechny informace o generickém typu, a proto můžeme provádět "kouzla", která jsou v C++ nebo v JAVĚ zapovězená a nedostupná.

static void Main(string[] args)
        {
            //Získání generického typu
            Type poolType = typeof(ObjectPool<>);
            
            //Vytvoření generických argumentů (typ SomeResource substituující generický parametr T z třídy ObjectPool)
            Type[] genArguments = new Type[]{typeof(SomeResource)};
            //Dynamické vytvoření uzavřeného konstruovaného typu ObjectPool<SomeResource>
            Type constructedType = poolType.BindGenericParameters(genArguments);
            //Vytvoření instance typu ObjectPool<SomeResource>
            Object conType = Activator.CreateInstance(constructedType, new Object[]{10});
            
            Console.WriteLine(conType.ToString());
        }
Zveřejněno Tuesday, April 12, 2005 1:58 PM by rene
Vedeno pod:

Komentář

 

Jirka bianco Vagner napsal:

Mel bych pididotazek, bude tahle presnaska nekdy ke stazeni v archivu AV Silicon Hillu jako video?
April 13, 2005 8:28 AM
 

Rene napsal:

Ano, prednaska byla natacena na video, takze predpokladam, ze se v archivu nekdy objevi ;)
April 13, 2005 8:46 AM
Neregistrovaní uživatele nemužou přidávat komentáře.
Powered by Community Server (Personal Edition), by Telligent Systems