#include <iostream>
struct Node
{
int value;
void* p;
Node(int _value)
: value(_value), p(nullptr)
{
}
};
int main()
{
Node* list = new Node(5);
list->p = (void*) new Node(6);
// It is necessary to make check!
std::cout << list->value << " " << ((Node*)list->p)->value << std::endl;
// Need delete!
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKc3RydWN0IE5vZGUKewogICAgaW50IHZhbHVlOwogICAgdm9pZCogcDsKICAgIE5vZGUoaW50IF92YWx1ZSkKICAgICAgICA6IHZhbHVlKF92YWx1ZSksIHAobnVsbHB0cikKICAgIHsKICAgICAgICAgICAgCiAgICB9Cn07CgppbnQgbWFpbigpCnsKICAgIE5vZGUqIGxpc3QgPSBuZXcgTm9kZSg1KTsKICAgIAogICAgbGlzdC0+cCA9ICh2b2lkKikgbmV3IE5vZGUoNik7CiAgICAKICAgIC8vIEl0IGlzIG5lY2Vzc2FyeSB0byBtYWtlIGNoZWNrIQogICAgCiAgICBzdGQ6OmNvdXQgPDwgbGlzdC0+dmFsdWUgPDwgIiAiIDw8ICgoTm9kZSopbGlzdC0+cCktPnZhbHVlIDw8IHN0ZDo6ZW5kbDsKICAgIAogICAgLy8gTmVlZCBkZWxldGUhCiAgICAKfQo=