cpp/memory/addressof

@1@ Obtains the actual address of the object or function, even in presence of overloaded. @2@ Rvalue overload is deleted to prevent taking the address of rvalues.

Return value
Pointer to.

Possible implementation
The implementation below is not (which requires compiler support).

Correct implementation of this function requires compiler support: GNU libstdc++, LLVM libc++, Microsoft STL.