1

以下の例では、コンパイルが失敗するRCPP_MODULEメソッドを除いて、いくつかの通常の c++ メソッドを R にエクスポートすることに問題はありません。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)
        ;
};

cloneR で作成された他の C++ クラスを参照できるようにメソッドをエクスポートする方法は?

4

2 に答える 2

5

以下は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)
        ;
};
于 2012-10-29T10:07:13.460 に答える
1

cloneと呼ばれるRcppメソッドがあるので、名前を変更してみてください。

于 2012-10-02T14:21:53.303 に答える