Kiedy usuwanie instancji szablonu jest lepsze niż usunięcie przeciążenia innego niż szablon?

Załóżmy, że mam szablon, który działa z surowymi wskaźnikami:

template<typename T>
void processPointer(T* ptr);

Nie chcę tego nazywaćvoid* wskazówki. Wygląda na to, że mam dwie możliwości. Mogę usunąć przeciążenie bez szablonu:

void processPointer(void*) = delete;

Lub mogę usunąć instancję szablonu:

template<>
void processPointer<void>(void*) = delete;

Deklarowanie przeciążenia bez matrycy jest łatwiejsze (brak futzowania przy pomocy nawiasów kątowych). Czy istnieją powody, dla których wolałbym zamiast tego usunąć instancję szablonu?

questionAnswers(4)

yourAnswerToTheQuestion