Какую практику вы бы порекомендовали и почему?
class Foo : public boost::noncopyable {};
vs.
class Foo : private boost::noncopyable {};
Я не могу представить, что мне понадобится использовать экземпляр of Foo как boost :: noncopyable, поэтому в данном случае я склоняюсь к частному наследованию.