In C++ to work with object by void pointer the type casting needed. For example:
void *p_void = some_data_or_func();
char *p_ch = (char*)p_void; // C-Style cast
char *p_ch2 = static_cast<char*>(p_void); // CPP-Style cast
And only now you can work with a pointer as a known data type.