Como exportar objeto C++ em R para C++?
Pergunta
No exemplo abaixo, eu não tenho nenhuma dificuldade de exportar alguns normal c++ método em R, usando RCPP_MODULE
exceto o método clone
que faz a compilação falha.
struct C
{
void clone(C* other)
{
*this = *other;
}
};
#include <Rcpp.h>
using namespace Rcpp;
RCPP_MODULE(mod){
class_<C>("C")
.method("clone", &C::clone)
;
};
Como exportar o clone
método para que eu possa referência para outras classes C++ que é criado em R?
Solução
A seguir funciona com a versão de desenvolvimento do Rcpp.Ver este artigo no meu blog.
#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)
;
};
Outras dicas
Há um Rcpp método chamado de clone, de modo a tentar mudar o nome de vocês.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow