
Сообщение от
Deviaphan
Ну и если придираться, то C<int> и C<double> это разные классы и "задруживание" самого себя просто побочным эффектом кривой реализации оказывается.
Если придираться по полной с точки зрения ООП головного мозга, то сама возможность задруживания кого бы то ни было с кем бы то ни было — это уже кривая реализация и жуткое нарушение инкапсуляции.
Но конкретно у буста — это ради возможности сделать shared_ptr слаботипизированным, что тоже, в общем-то, не совсем хорошо, но да ладно, раз уж язык такой.