我有一个处理两种类型的函数:NVector
和NMatrix
; 前者是从后者衍生而来的。这个函数基本上是一个专门的拷贝构造函数。我希望它返回与调用它的对象类型相同的对象,因此,NVector
返回NVector
,而不是NMatrix
。
static VALUE nm_init_modifiedcopy(VALUE self) {
// ... some code ...
// formerly, I had cNMatrix where klass is. But it could also be cNVector!
return Data_Wrap_Struct(klass, mark_func, delete_func, unwrapped_self_copy);
}
如何获取要传递的对象的类属性Data_Wrap_Struct
?