Esiste un uso legittimo di void*in C ++? O è stato introdotto perché ce l'aveva C?
Solo per ricapitolare i miei pensieri:
Input : Se vogliamo consentire più tipi di input, possiamo sovraccaricare funzioni e metodi, in alternativa possiamo definire una classe base comune o un modello (grazie per averlo menzionato nelle risposte). In entrambi i casi il codice diventa più descrittivo e meno soggetto a errori (a condizione che la classe base sia implementata in modo sano).
Risultato : non riesco a pensare a nessuna situazione in cui preferirei ricevere void*invece di qualcosa derivato da una classe base nota.
Giusto per chiarire cosa intendo: non sto chiedendo specificamente se esiste un caso d'uso per void*, ma se c'è un caso in cui void*è la scelta migliore o l'unica disponibile. A cui hanno risposto perfettamente diverse persone di seguito.