SORU
30 EYLÜL 2008, Salı


Adsız/anonim ad vs statik fonksiyonları

C az kullanılan bir özellik (anonim) isimsiz ad, gibi oluşturmak için yeteneği

namespace {
    int cannotAccessOutsideThisFile() { ... }
} // namespace

Böyle bir özellik ad belirtebilirsiniz. madem faydasız olacağını düşünürdüm, imkansız dışından içindeki her şeyi erişmek için. Ama bu isimsiz addosya içinde erişilebilir eğer örtülü bir madde kullanarak onlara varmış gibi oluşturulmuş.

Benim sorum, neden ve ne zaman bu statik işlevleri kullanmayı tercih olurdu? Ya aslında aynı şeyi yapmanın iki yolu vardır?

CEVAP
30 EYLÜL 2008, Salı


C Standart İsimsiz ad, paragraf 2 Bölüm 7.3.1.1 okur:

Static anahtar sözcüğü kullanılır bir nesne bildirirken onaylanmamış adsız-AD, AD, kapsam üstün bir alternatif sağlar.

Statik tek tür bildirimleri için nesneler, fonksiyonlar, ve anonim sendikaların adları için geçerlidir.

Düzenleme:

Statik anahtar kelime (çeviri biriminde bir değişken bildiriminde görünürlüğünü Etkiler) Bu kullanım iptal etme kararı (ref) tersine döndü. Bu durumda bir statik ya da adsız bir ad kullanarak aynı şeyi yapmanın temelde iki yolu olmak için geri döndü. Daha fazla tartışma için lütfen this Bu soruya bakın.

İsimsiz ad hala çeviri-birim-yerel türlerini tanımlamak için izin avantajı var. Lütfen daha fazla bilgi için this Bu soruya bakın.

Kredi beni bilgilendirdiğiniz için Mike Percy gider.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • snookie77

    snookie77

    2 Mart 2006
  • Tracy Hairston

    Tracy Hairst

    22 Mayıs 2009
  • YAN TV

    YAN TV

    20 EKİM 2011