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?

Foi útil?

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
scroll top