Sadece C# 6'dan gelen statik olmayan özelliklerin statik gibi erişebildiğini merak ediyorum. İşte O mülkiyet "erişme" değil bir örnekAdı nasıl çalışır?
public class TestClass
{
public string Name { get; set; }
}
public class Test
{
public Test()
{
string name = nameof(TestClass.Name); // whats so speciall about nameof
//string name2 = TestClass.Name; this won't compile obviously,
}
}
de Bu konuda özel bir şey yok. Bu, çalışma zamanında değil, derleme zamanında gerçekleşir. Ve derleyici adının bir üyesini bir dize değişmezine (Name name) dönüştürmek için hiçbir problemi yoktur. Bu konuda garip olan tek şey, dilin eklenmesi için 6 sürüm almasının nedeniydi :) –
Ne demek "nameof' nasıl çalışıyor?" Neden işe yaramıyor? Aynı soruya sahip misiniz? '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '] Bunlardan _any_ nasıl çalışır? Derleyici bunları anlamak ve onları gördüklerinde doğru derlenmiş kodu oluşturmak için yazılmıştır. Derleyicilerin nasıl çalıştığı hakkında bir açıklama mı arıyorsunuz? Sonra, "çok geniş". Eğer değilse, o zaman gerçekten soruyorum _what_. Lütfen aslında neyin dalga geçtiğini açıkla. –
cevabınızı burada bulabilirsiniz: http://stackoverflow.com/questions/31695900/what-is-the-purpose-of-nameof –