\


 Thursday, 25 August 2005
Programátorská hádanka

Dokážete napsat jeden řádek kódu, kterým přířadíte statickému členu BField řetězec  "Milujeme porušování zapouzdření"? ;)

        sealed class A
        {
            private sealed class B
            {                    
                            private static string BField;
             
                        }
                    }


Thursday, 25 August 2005 15:49:16 (Central Europe Standard Time, UTC+01:00)       
Comments [3]  


Thursday, 25 August 2005 16:56:48 (Central Europe Standard Time, UTC+01:00)
tento riadok kodu to zvladne

((FieldInfo) System.Reflection.Assembly.GetExecutingAssembly().GetType("A+B").FindMembers(MemberTypes.All, BindingFlags.NonPublic | BindingFlags.Static, null, "BField")[0]).SetValue(null, "Milujeme porušování zapouzdření");

overit sa to v konzolovej aplikacii da aj takto

Console.WriteLine(((FieldInfo) System.Reflection.Assembly.GetExecutingAssembly().GetType("A+B").FindMembers(MemberTypes.All, BindingFlags.NonPublic | BindingFlags.Static, null, "BField")[0]).GetValue(null));
Thursday, 25 August 2005 19:30:05 (Central Europe Standard Time, UTC+01:00)
Ja volil trochu jiny zacatek :)

typeof(A).GetNestedTypes(BindingFlags.NonPublic)[0].GetFields(BindingFlags.Static | BindingFlags.NonPublic)[0].SetValue(null, "Milujeme porušování zapouzdření");
pvasek
Friday, 26 August 2005 07:22:15 (Central Europe Standard Time, UTC+01:00)
Vyborne. Potlesk pro oba ;)
Comments are closed.