私はRとC++を統合するために、RcppとRInsideを使用しています。複雑でありながら適切に設計されたC++アーキテクチャがあり、1つの関数内からRにアクセスするのは難しいと感じています。R
より多くのOOP設計を得るために、インスタンスを異なるクラス/関数に渡すことは可能ですか?はいの場合、例はありますか?
クエリを詳しく説明するために、私はこのようなことを言いたいと思います、
void foo(RInside& R0, int& x0)
{
R0.assign(x0,"totalSum");
}
void foo2(RInside& R0, int& y0)
{
R0.assign(y0,"temp");
R0.parseEvalQ("totalSum = totalSum + temp");
}
int main(int argc, char *argv[])
{
RInside R(int argc, char *argv[]);
int x=10, y = 11;
foo(R,x);
foo2(R,y);
return 0;
}
私が現在気付いているのは、fooを呼び出すたびに、おそらくRInsideの新しいインスタンスが作成されるということです。
ありがとう-エゴン