.NET Core 3.x ve .NET Standard 2.1 C# 8.0 sözdizimi destekler, birçok fonksiyonel özellik sunar ve yeni özellikler eşanlamı ekler: Okuma yalnız, varsayılan arayüz yöntemleri, desen eşleştirme geliştirmeleri, öznitelik desenleri, Tuple desenleri, konum desenleri, anahtar ifadeleri, bildiri kullanımı, statik yerel fonksiyonlar, asenkron akışlar, indeksler ve aralıklar, null birleştirme atamaları vb. Bu makale, C# 8.0'ın yeni bilgi noktalarını açıklayacaktır.
İndeksin ve kapsam
Aşağıdaki .NET türleri hem indeksleri hem de aralıkları destekler: Dizi, Dizgi, Span ve ReadOnlySpan. List indeksleri destekler, ancak aralıkları desteklemez
Örnek 1: Kimlik numarasını alan kişinin doğum günü
Örnek 2: Dizinin son bitinin içeriğini alın
Örnek 3: Son biti kaldır
Anahtar
ifade
Özellik modu
Tuple deseni
Konum modu
Bazı türler, özelliklerini ayrık değişkenlere ayıran bir Deconstruct yöntemi içerir. Eğer Deconstruct metoduna erişiminiz varsa, Position Patterns kullanarak bir nesnenin özelliklerini kontrol edebilir ve bu özellikleri desenler için kullanabilirsin. X ve Y için ayrık değişkenler oluşturmak için Deconstruct yöntemi içeren aşağıdaki Point sınıfını ele alalım:
Ayrıca, bu dörtgenti temsil eden çeşitli pozisyonların aşağıdaki sayımını ele alalım:
Aşağıdaki yöntem, x ve y değerlerini çıkarmak için konum desenini kullanır. Daha sonra o noktanın dörtgenini belirlemek için when cümlesini kullanır:
Null merge atamaları
Yapıcı ifadeler
Açıklama Kullanımı
Using bildirmesi, öncesinde using anahtar kelimesi gelen değişken bir bildiredir. Derleyiciye, kapalı kapsamın sonunda işlenilecek değişkenleri bildirmesini ister. Örneğin, metin dosyası yazma kodu şöyledir:
Önceki örnekte, dosya yöntemin sağ parantezlerine ulaşıldığında işleniyor. Bu, beyan edilen dosyanın aralığının sonudur. Önceki kod, klasik kullanım ifadesini kullanan aşağıdaki koda eşdeğerdir:
Önceki örnekte, dosya, using ifadesiyle ilişkili sağ parantezlere ulaşıldığında işleniyor. Her iki durumda da, derleyici Dispose() çağrısı oluşturur. Eğer using ifadesindeki ifade mevcut değilse, derleyici bir hata oluşturur.
Kaynaklar
Bağlantı girişi görünür.
Bağlantı girişi görünür. |