Как экспортировать объект C++ в R обратно в C++?
Вопрос
В приведенном ниже примере у меня нет проблем с экспортом обычного метода C++ в R, используя RCPP_MODULE
кроме метода clone
это приводит к сбою компиляции.
struct C
{
void clone(C* other)
{
*this = *other;
}
};
#include <Rcpp.h>
using namespace Rcpp;
RCPP_MODULE(mod){
class_<C>("C")
.method("clone", &C::clone)
;
};
Как экспортировать clone
чтобы я мог ссылаться на другой класс C++, созданный в R?
Решение
Следующее работает с разрабатываемой версией Rcpp.Видеть Эта статья в моем блоге.
#include <Rcpp.h>
using namespace Rcpp;
RCPP_EXPOSED_CLASS(C)
struct C
{
void clone(const C& other)
{
*this = other;
}
};
RCPP_MODULE(play){
class_<C>("C")
.method("clone", &C::clone)
;
};
Другие советы
Существует метод Rcpp, называемый клонированием, поэтому попробуйте переименовать свой.
Не связан с StackOverflow