Pregunta

En el siguiente ejemplo, no tengo dificultades para exportar un método normal de C ++ en R usando RCPP_MODULE, excepto el método clone, lo que hace que la compilación haya fallado.

struct C
{
    void clone(C* other)
    {
         *this = *other;
    }
};

#include <Rcpp.h>
using namespace Rcpp;

RCPP_MODULE(mod){
    class_<C>("C")
        .method("clone", &C::clone)
        ;
};

¿Cómo exportar el método clone para que pueda hacer referencia a otra clase C ++ que se crea en R?

¿Fue útil?

Solución

Los siguientes trabajos con la versión de desarrollo de RCPP.Consulte este artículo en mi 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)
        ;
};

Otros consejos

Hay un método RCPP llamado clon, así que intente cambiar el nombre de la suya.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top