I am following the file `boost/smart_ptr/detail/operator_bool.hpp` and come across the following snippet of code that I do not understand

```
typedef T * this_type::*unspecified_bool_type;

operator unspecified_bool_type() const // never throws
{
    return px == 0? 0: &this_type::px;
}

```

I write some test codes with XCode and `&this_type::px` always return 1. Why?

Can some C++ guru share your thoughts?