This is just replacing a pointer with another pointer.
nix1 = nix2
That was a total thinking failure. What I actually wanted to test was something like that:
{
Nix nix4(4, "Hello, I'm four");
*nix1 = nix4;
}
qWarning() << "nix1: " << nix1->display(4);
And that works.
solved, actually with help from SGaist (qt.forum)