Я просматривал стандартную библиотеку clang c ++ и нашел этот класс в классе shared_ptr
.
class shared_ptr
...
private:
struct __nat {int __for_bool_;};
...
};
, и я понимаю, что этот класс используется для определения возможности преобразования типов во время компиляции, но его член __for_bool_
никогда не используется нигде в классе или аналоге weak_ptr
.Итак, мой вопрос, в чем смысл __for_bool_
?Почему бы просто не использовать пустой класс для той же цели?
Я уверен, что авторы стандартной библиотеки определенно знают лучше меня.