sorry I'm a bit confused. why does it return a reference? the dereference operator `*` is used to access the value that a pointer points to ```cpp #include int& f(){ int* x = new int{8},; *x+=8; return *x; // why not &x }, int main(){ int x = f(); std::cout << x << '\n'; }, ``` why not &x
confusingly, the *dereference operator* returns a reference to the pointed-to object (the naming comes from C, which doesn't have references).