6
環境ではRcppのRにwith()
と同じ機能を持たせることが可能かどうかを検討しています。Rcppの環境での式の評価
例えば、RIで、環境を作成2つの変数を追加し、唯一variablenamesを使用して式を評価するwith()
を使用することができます。
e <- new.env()
e$x <- 1
e$y <- 2
with(e,
x + y
)
私はRcppに似た何かができるが、それはのインデックスを必要とは環境:
f <- cxxfunction(signature(env="environment"), '
Environment e(env);
double Res = (double)e["x"] + (double)e["y"];
return(wrap(Res));
', plugin = "Rcpp")
f(e)
Rcppの変数名のみを使用して式を評価することはできますか?私が尋ねる理由は、式を追加できる動的なC++関数を記述したいからです。動作しないいくつかのダミーのコードでたとえば:
f <- cxxfunction(signature(env="environment"), sprintf('
Environment e(env);
double Res;
// Res = with(e, %s);
return(wrap(Res));
','x + y'), plugin = "Rcpp")