Вы можете привести мне конкретный пример, когда предпочтительнее использовать частное наследование вместо композиции? Лично я буду использовать композицию вместо частного наследования, но может быть случай, когда использование частного наследования является лучшим решением конкретной проблемы. Чтение часто задаваемых вопросов по C ++ дает вам пример использования частного наследования, но мне кажется, что проще использовать шаблон композиция + стратегия или даже публичное наследование, чем частное наследование.