Não use void pointer em C++
Brincadeira!, mas existe uma alternativa em C++ para não usar void pointer, que se chama Boost Any.
Imagina ter uma variável “Sem Tipo” no C++, igual nos podemos fazer no PHP ou Javascript.
Como uso Boost::Any?
Simples como declarar uma variável int, double ou char.
No repositório abaixo você poderá ver alguns exemplos que criei.
Exemplo
Qual Problema?
int main()
{
boost::any texto = std::string("Isso é uma string!");
// Output: Isso é uma string!
std::cout << boost::any_cast<std::string>(texto) << std::endl;
// agora sou um double
texto = 10.52;
// Output:: 10.52
std::cout << boost::any_cast<double>(texto) << std::endl;
return 0;
}
Para imprimir o valor, você tem que saber o tipo do valor que você atribuiu a variável
Como pode ver no exemplo acima, usei o boost::any_cast<tipo> para imprimir o valor da variável.
Tem alguma dúvida? Deixei seu comentário aqui embaixo!