Hy this code (https://ideone.com/pOX4Cd) is based on the code that I have find somewhere, I can’t exactly find out why the address of the object created in constructor(string) and send to the move constructor are the same - I mean function customizepizza() is returning object by value, so I thought that new object should be created on the stack, and then send to the move constructor. I would be thankful if someone would help me to understand this. Does it happens because of move constructor, I know that this is rather basic knowledge by I am a little lost here 