Допустим, у меня есть два класса, которые разработаны на C ++, но предоставляются с использованием собственных модулей Nan NodeJS.Например, классы «Sprite» и «Texture».
В JavaScript я хочу, чтобы Sprite сохранял текстуру, как если бы это было просто другое свойство:
// Local instance of texture
var t = new Texture();
// Global instances of Sprites that won't be GC'd
global.spr = new Sprite();
global.spr2 = new Sprite();
// Same texture can be assigned to multiple sprites
spr.texture = t;
spr2.texture = t;
console.log(spr.texture);
Со стороны C ++, свойство "texture" Sprite будет Getter / Setter, который хранит или извлекает текстуру.Однако вопрос в том, как правильно хранить экземпляр Texture внутри (из предоставленной версии v8 :: Local)?Например, что мне нужно сделать, чтобы зарегистрировать его как «принадлежащий» Sprite и заставить его не получать GC'd, как это, вероятно, было бы в приведенном выше примере?