Usos do destruidor = delete;

Considere a seguinte classe:

struct S { ~S() = delete; };

Em breve e para os fins da pergunta: não consigo criar instâncias deS gostarS s{}; pois eu não poderia destruí-los.
Conforme mencionado nos comentários, ainda posso criar uma instância fazendoS *s = new S;, mas não posso excluí-lo também.
Portanto, o único uso que posso ver para um destruidor excluído é algo como isto:

struct S {
    ~S() = delete;
    static void f() { }
};

int main() {
    S::f();
}

Ou seja, defina uma classe que exponha apenas várias funções estáticas e proíba qualquer tentativa de criar uma instância dessa classe.

Quais são os outros usos (se houver) de um destruidor excluído?

questionAnswers(5)

yourAnswerToTheQuestion