Ev gelişme C'de koşullu özellik nedir? - techopedia nedir?

C'de koşullu özellik nedir? - techopedia nedir?

İçindekiler:

Anonim

Tanım - Koşullu Özellik ne anlama geliyor?

Koşullu öznitelik, yürütülmesi önişleme tanımlayıcısının tanımına bağlı olan bir yöntemi veya sınıfı işaretlemek için kullanılan bir etikettir.


Koşullu bir özellik koşullu derlemeyi belirtmek için bir koşulu belirtir; burada yöntemler, sembollerin tanımı temelinde seçici olarak çağrılır. Derleyiciye, belirli bir koşullu derleme sembolü tanımlanmış olsun veya olmasın, bir koşula bağlı olarak belirli kod bloklarını derlemesini (Microsoft Orta Dilde) derlemesini veya derlememesini bildirir. Belirli simgeler çağrıldıkları anda tanımlanmadıysa, derleyici tarafından bu yönteme veya sınıfa yapılan çağrılar yok sayılır.

Techopedia Şartlı Özelliği açıklıyor

Koşullu bir özellik aşağıdaki özelliklere sahiptir:

  • Yöntemlere ve sınıflara uygulanabilir, ancak yalnızca bir öznitelikten türetilmişlerse.
  • Bir sınıfa koşullu öznitelik uygulanırken, yalnızca koşullu derleme sembolü tanımlanmışsa öznitelik sınıfı meta verilere gönderilir.
  • Derlemeyi kontrol eden tanımlayıcı sembolü olan bir parametre alır.
  • Koşullu bir yönteme veya öznitelik sınıfına iletilen bağımsız değişkenler derleyici tarafından tür denetlenir.
  • Çalışma süresine göre değil, derleyici tarafından tamamen halledilir.
  • Temsilci oluşturma ifadesinde kullanılan bir yönteme uygulanamaz.
  • Koşullu yöntem için oluşturulan kodu etkilemez, ancak yöntemin çağrısını etkiler.

Koşullu bir özellik, bildirimsel bir programlama modeli sağlar ve kaynak kodunun kolayca korunmasına yardımcı olur. Yöntem düzeyinde koşullu bir öznitelik uygulandığında, kaynak kodu daha okunabilir. Bir yöntemin arayanının koşullu derleme için ek kod alması gerekmez. Koşullu bir öznitelik, uygulama ile ilgili tanılama bilgilerini görüntülemek ve günlüğe kaydetmek için DEBUG tanımlayıcısını kullanarak hata ayıklama yapılarında izleme ve günlük tutma işlevlerini etkinleştirmek için kullanılır. Ayrıca, hata ayıklama derlemesi ile ilgili mantığı (geliştirme için kullanılan sistemlerde) siteler ve uygulamalarda dağıtılan sürüm derlemelerinden ayırmaya yardımcı olur. Kod çoğaltması olmayan bir yazılımın birden çok sürümünü (bazı sürümlerde seçilen özelliklerle) korumak için, koşullu derleme, kendileri için tanımlanan ilgili simgelere dayalı olarak tekli ana kaynak kodunun birden çok sürüm için tutulduğu doğru tekniği oluşturur.


Koşullu bir öznitelik kullanırken uyulması gereken birkaç kural şunlardır:

  • Bir sınıf veya yapı bildirimi içindeki koşullu bir yöntemin void olarak bir dönüş türü olması gerekir.
  • Koşullu özellikler olarak çoklu tanımlayıcılar kullanılırken, yöntem (ler) in dahil edilmesi, tanımlanan mantıksal OR veya mantıksal AND sonucuna dayanır.
  • Bir arabirim bildirimindeki bir yöntemde belirtilemez.
  • Koşullu bir yöntemden önce "geçersiz kılma" anahtar kelimesi gelemez, ancak sanal olabilir. Geçersiz kılınırsa, dolaylı olarak koşullu olarak kabul edilir.
  • Koşullu derleme için dikkate alınan semboller, derleyici komut satırı seçenekleri olarak veya işletim sistemi kabuğundan ortam değişkenleri olarak veya kaynak kodunda pragmalar ("#define" önişlemcisi kullanılarak) olarak tanımlanabilir.
  • C ++ 'dan farklı olarak, C #' daki sembollerin tanımı herhangi bir sırada olabilir ve bu nedenle "#define" ile koşullu bir yöntem arasındaki sıralama düzgün bir şekilde ayarlanmalıdır.

"#İf ve #endif" kullanımı koşullu özniteliğe alternatif bir seçenek oluştursa da, ikincisi öncekine göre daha temiz, zarif ve daha az hataya açık bir yaklaşım sağlar. Dahili olarak, fark, bir yöntem için koşullu bir öznitelik kullanılırken, yöntemin yine de derlemenin bir parçası olacağı ve yüklenmeyeceğidir. Ancak #if / #endif durumunda, yöntem derlemenin kendisinde görünmez.

Bu tanım C # bağlamında yazılmıştır.
C'de koşullu özellik nedir? - techopedia nedir?