Hacker News new | past | comments | ask | show | jobs | submit login

> How would you expect a programmer to ask "do these two pointers hold the same address?" .holdsSameAddressAs()?

In C++, yes, you do

    (&a == &b)
and the plain == is used for the common case of actually doing what you mean (what in Java would be .equals()).



Actually, that's not always correct in C++ (it is in C). It is possible that either type has the operator& overloaded, so instead the proper way to do it is:

    (std::addressof(a) == std::addressof(b))
http://en.cppreference.com/w/cpp/memory/addressof


Thanks (I didn't even know this operator was overloadable)!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: