C++ Rcpp返回C/C和#x2B+;数组指针对象
我想用C/C++编写自己的数据类型。 我生成了一个小类,如下所示:C++ Rcpp返回C/C和#x2B+;数组指针对象,c++,c,r,rcpp,C++,C,R,Rcpp,我想用C/C++编写自己的数据类型。 我生成了一个小类,如下所示: #include <Rcpp.h> using namespace Rcpp; class Test { public: int rows; int cols; float a[10]; Test() {}; }; RCPP_EXPOSED_CLASS( Test ) RCPP_MODULE(mod){ class_<Test>("Test") .constr
#include <Rcpp.h>
using namespace Rcpp;
class Test
{
public:
int rows;
int cols;
float a[10];
Test() {};
};
RCPP_EXPOSED_CLASS( Test )
RCPP_MODULE(mod){
class_<Test>("Test")
.constructor()
.field("rows", & Test::rows )
.field("rows", & Test::cols )
// .field("a", & Test :: a)
;
}
#包括
使用名称空间Rcpp;
课堂测试
{
公众:
int行;
int cols;
浮动a[10];
Test(){};
};
RCPP_暴露_类(测试)
RCPP_模块(模块){
类别("测试")
.constructor()
.field(“行”和测试::行)
.field(“行”和测试::cols)
//.field(“a”,&测试::a)
;
}
代码正在运行。但是现在我想从a得到值。如果我理解了文档,那么我必须创建一个“as”函数吗?然后返回一个数值向量
我不理解SEXP类型,它是一个“无类型”的指针,可以在C/C++和R中使用吗?这是很多基本的问题 也许你不应该从模块和类开始?怎么样
- 您可以重写包含
的类std::vector a
- 编写一个简单的“init()”函数,将类分配给文件局部变量(通常是指针)
- 编写小setter和getter函数,请参见Rcpp属性
一旦一些事情变得更加清晰,做更多的基础工作,就可以重温Rcpp模块的小插曲非常感谢,但是我需要一个自己的数据类型。如果我理解你的正确,我必须把浮点2DIM数组转换成RCP::MultMeCasic用于R和C++ 1),在R中没有<代码>浮点< /> >,只有<代码>双< /代码>。2) C/C++没有本机的二维类型,因此每个矩阵类只提供方便的索引。是的,我会用NumericMatrix。