1

我正在使用带有 RcppArmadillo 的犰狳。是否可以声明一个矩阵,arma::mat A然后为我之前创建的这个矩阵分配一些内存arma::mat(aux_mem*, n_rows, n_cols, copy_aux_mem = true, strict = true)

目的是从 Rcpp::NumericMatrix 创建一个犰狳矩阵,但只if()满足特定条件。然后稍后在同一个函数中,我想使用该矩阵,但再次只if()满足一个条件。

4

1 回答 1

0

如果我明白你在问什么,答案可能是肯定的。布尔值在最后控制是否分配新内存,或者是否重新使用现有对象的内存。

不确定“为该矩阵分配一些内存”是什么意思。如果您希望 R 管理内存,请参阅编写 R 扩展手册,了解您可以做什么和不可以做什么——关键是对于我们返回到 R 的对象,我们需要创建它们以使它们成为 R 的“原生”。 Rcpp 可以做到这一点,RcppArmadillo 也可以让你做到这一点。

另外:您最好在犰狳的作者康拉德也阅读的 rcpp-devel 列表中提出这些问题。

于 2011-10-24T12:42:30.350 回答