Ответ от @ Akash5288 не имел для меня никакого смысла:
Если всем классам разрешен подкласс, он будет похож на спецификатор общего доступа.
нет способа ограничить этот класс подклассом только несколькими классами (мы не можем ограничивать класс, наследуемый только несколькими классами из всех доступных классов в пакете / вне пакета), нет необходимости использовать защищенные спецификации доступа для классы верхнего уровня. Следовательно, это недопустимо.
blockquote>Затем вы можете применить ту же логику к защищенным методам и переменным, они также «похожи на общедоступные». Все классы за пределами пакета могут распространять наш открытый класс и использовать его защищенные методы. Почему ограничение методов и переменных расширенным классам нормально, но ограничение всего класса не в порядке? «Подобно публике» не является «таким же, как и публичный». Моя интерпретация заключается в том, что вполне нормально разрешать защищенный класс, так как это хорошо, чтобы разрешить защищенные методы.
Ответ «вы не можете расширить класс, который вы не можете получить / увидеть», более логичен.
Два быстрых предложения:
Используйте пакетные файлы Gabor , которые, как говорят, содержат инструменты, помогающие, например, с перемещением этой массовой библиотеки. Предостережение: я не использовал их.
Не устанавливайте библиотеки в «дереве файлов» установленной версии R. В Windows я могу поместить R в C: / opt / R / R- $ version, но поместить все библиотеки в C: / opt / R / library /, используя следующий фрагмент, поскольку он в первую очередь решает проблему:
$ cat .Renviron # this is using MSys/MinGW which looks like Cygwin
## Example .Renviron on Windows
R_LIBS="C:/opt/R/library"
Предложенный выше метод не будет полностью работать, если у вас есть пакеты, не принадлежащие CRAN. Например, личный пакет или пакет, загруженный с сайта, не относящегося к CRAN.
Мой предпочтительный метод в Windows (обновление 2.10.1 до 2.11.0):
R-2.10.0 / library / *
в ] R-2.11.0 / library /
update.packages ()
Следуя предложению Дирка, вот некоторый код R, чтобы сделать это в Windows: Как легко обновить R в Windows XP
Обновление (15.04.11): Я написал еще одно сообщение на эту тему, объясняя, как решать общие проблемы обновления R в Windows 7