SORU
10 Mayıs 2012, PERŞEMBE


Noreturn öznitelik anlamı nedir?

[malzeme.güzel bir sorudur.noreturn] örnek sağlar :

[[ noreturn ]] void f() {
throw "error";
// OK
}

ama işlevin dönüş türü void olduğu için [[ noreturn ]], amacının ne olduğunu anlamış değilim.

, Noreturn öznitelik anlamı nedir? Nasıl kullanılması gerekiyor?

CEVAP
10 Mayıs 2012, PERŞEMBE


Noreturn özniteliği arayan kişiye geri verme işlevleri için kullanılan gerekiyordu. Bu demek değil void fonksiyonları (ki bunu iade etmek için arayan değiller dönüş değeri), ama işlevleri denetimi akacak geri arama işlevi sonra işlevi bitiyor (örneğin fonksiyonları çıkış uygulama, döngü sonsuza kadar ya da atmak istisna olarak senin örnek).

Bu Derleyiciler tarafından bazı iyileştirmeler yapmak ve daha iyi uyarılar oluşturmak için kullanılabilir. f noreturn özniteliği varsa, örneğin, derleyici f(); g(); yazarken g() ölü kodu hakkında sizi uyarmak olabilir. Aynı şekilde derleyici f() çağrıları sonra geri dönüş komutları eksik hakkında sizi uyarmak için değil bilecek.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Andytokkallos

    Andytokkallo

    27 Kasım 2007
  • Matthew Pearce

    Matthew Pear

    9 AĞUSTOS 2009
  • TheDamnWreckless

    TheDamnWreck

    12 Temmuz 2010