I was looking through clang's c++ standard library, and found this class in the shared_ptr
class.
class shared_ptr
...
private:
struct __nat {int __for_bool_;};
...
};
and I understand that this class is used to detect whether type conversion is possible at compile time, but its member __for_bool_
is never used anywhere in the class or the weak_ptr
counterpart. So my question is, what is the point of __for_bool_
? Why not simply use an empty class for the same purpose?
I'm sure the standard library authors definitely knows better than me.