我正在编写一个 node.js 插件,但在实现返回对象副本的克隆方法时遇到问题。
var p = new Point(1, -2);
var copyOfP = p.clone();
这是我的实现,这是不正确的,因为它在没有句柄时不调用析构函数:
static v8::Handle<v8::Value> Clone(const v8::Arguments& args)
{
HandleScope scope;
Point* in = ObjectWrap::Unwrap<Point>(args.This());
Point* out = new Point(in->x_, in->y_);
out->Wrap(args.Holder());
return args.Holder();
}