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

  • Fr. Eckle Studios

    Fr. Eckle St

    29 Kasım 2006
  • InfinityWard

    InfinityWard

    19 EYLÜL 2006
  • Jonathan Morrison

    Jonathan Mor

    24 Mart 2010