Bunu anlamakta zorlanıyorum.Noexcept etiketli bir işlev içinde neden bir istisna atılmasına izin verilir?
double compute(double x, double y) noexcept
{
if (y == 0)
throw std::domain_error("y is zero");
return x/y;
}
bu clang (gcc kontrol etmedim) ince derler ama bana saçma görünüyor. Bir derleyici neden noexcept işlevinin throw ifadesi içermesine izin verir?
Deneyin .......... –
['std :: terminate'] (http://cdn.theatlantic.com/assets/media/img/mt/2014/12/term/lead_large .jpg) – user657267
Üzgünüz, başlık yanıltıcı. Asıl soru şudur: "Neden bir derleyici noexcept işlevinin bir throw ifadesi içermesine izin verir?" – tunnuz