Dereferenciando o ponteiro vazio em C ++
Estou tentando implementar uma lista vinculada genérica. A estrutura para o nó é a seguinte -
typedef struct node{
void *data;
node *next;
};
Agora, quando tento atribuir um endereço aos dados, suponha, por exemplo, um int, como -
int n1=6;
node *temp;
temp = (node*)malloc(sizeof(node));
temp->data=&n1;
Como posso obter o valor de n1 do nó? Se eu disser -
cout<<(*(temp->data));
Eu recebo -
`void*' is not a pointer-to-object type
Não anular ponteiro get typecasted para o tipo de ponteiro int quando eu atribuir um endereço de int para ele?