2
Rcpp 모듈을 사용하여 노출 된 클래스에 제네릭 메서드를 정의하는 적절한 위치는 무엇입니까? 보다 구체적으로, 다음 소스 파일이 Rcpp 패키지의 일부라고 가정합니다.Rcpp 모듈을 사용하는 일반 메서드
.onLoad <- function(libname, pkgname) {
loadRcppModules()
}
.onAttach <- function(libname, pkgname) {
setMethod("+", signature(e1=my.double, e2=my.double), function(e1, e2) {
new(my.double, e1$value + e2$value)
}, where=.GlobalEnv)
}
내가 학습하지만, 관심이 다음 R 코드가 나타납니다
#include <Rcpp.h>
class Double {
public:
Double(double d);
double get() const;
private:
...
};
RCPP_MODULE(my_module) {
using namespace Rcpp;
class_<Double>("my.double")
.constructor<double>()
.property("value", &Double::get);
}
가 원하는 결과를 제공하기 위해 : 나는 장난감 클래스 '더블'로 + 연산자를 사용하고 싶습니다 이 문제를 해결하는 올바른 방법.
충분합니다. Rcpp를 패치하여 범용 메소드에 대한 C++ 구현을 제공 할 수 있습니까? 나는 그러한 수정을 제공하는 데 열심이다 ... – AlexK
패치는 언제나 환영받을 수 있습니다. 특히 문서 및 단위 테스트가 제공되는 경우 특히 그렇습니다. 그러나 먼저 rcpp-devel에 대해 논의하는 것이 가장 좋습니다. –
언젠가는 C++ 운영자를 홍보하기위한 연산자를 지원할 것입니다. 이런 일이 일어날 때 나는 대부분 내 손에 달려있다. 누군가가이 개발을 후원 할 의사가 있다면 기꺼이 설계 문서 초안을 작성할 수 있습니다. 그렇지 않으면 실제로 필요할 때까지 기다릴 것입니다. –