Rcpp_Modules:用形式的R参数公开类方法
Rcpp_Modules: exposing class method with formal R arguments
Rcpp Modules vignette解释了如何通过在自由函数的函数指针后传递Rcpp::List
来提供正式的参数规范。是否有任何API为类方法提供命名和/或默认参数?显然,相同的"函数"技术不适用于此:
RCPP_MODULE(TestModule) {
class_<TestClass>( "TestClass" )
.constructor()
.method( "method", &TestClass::method,
List::create(_["arg"])) //DOESN'T COMPILE
;
}
关于这个主题(这里和这里)有几次讨论,但第一次讨论中提供的解决方案可以归结为使用全局函数,第二次讨论涉及额外的R包装函数层来提供参数规范。有什么巧妙的方法/变通方法吗?
我刚刚玩过它。这个问题对Rcpp模块没有意义:
- 函数通过签名工作
- 自变量是签名的一部分,所以无论如何都必须提供它
- 没有参数的调用(用于测试默认参数)不能作为假定的
void
签名工作
相关文章:
- 如何制作一个将函数作为参数的类方法
- 使用用户定义的参数调用future/async并调用类方法
- 使用模板参数重载C++方法:如何使其适用于模板的子类?
- 如何在Visual Studio 2017上将类方法设置为参数并将它们与lambda一起使用?
- 是否可以基于类模板的参数调用类方法和全局方法
- 如何在 C 中包装C++具有参数的类方法或返回另一个C++类的实例?
- 将 std::ofstream 对象作为参数传递给类方法
- 将指针类方法作为参数传递给其他类方法C
- 如何调用作为参数给出的C++类方法?
- 如何将基类方法超载作为参数传递到C 中的模板类
- 具有取决于模板参数的方法的模板类
- C++11可变参数模板方法完全影子基类方法
- 我如何根据某些模板参数影响模板类方法的返回类型
- 在声明C 期间具有值的类方法的初始化参数
- r-使用Rcpp模块公开带有引用参数的c++类方法时出错
- 如何在子类方法中更改参数
- 接受 lambda 作为参数的类方法 - 错误消息
- 类方法接受表示各种参数数函数的 lambda
- 具有与专用列表一起使用的参数列表的超类方法<superclass>
- C 通过类方法作为参数