¿Por qué se utiliza noexcept dos veces para la función global swap?
Estoy tratando de entender noexcept. Me di cuenta de que la función de intercambio global generalmente se especifica de esta manera: void swap (T& x, T& y) noexcept(noexcept(x.swap(y))) { x.swap(y); } Quiero entender por qué la especificación de noexcept es noexcept(noexcept(x.swap(y))) y no noexcept(x.swap(y)).