Hello, On Tue, Aug 2, 2011 at 22:05, Flavius Aspra <flavius...@gmail.com> wrote: > I have a zval *obj holding an object of class B, which I then add to an > array member of another object of class A. Then I create a new instance > *obj2 of class B, to which I want to add a reference to *obj. How would I > best go about it? > > So A works as a "pool" of B's, and B's may reference to each other. > > Please tell me key functions and macros to use to accomplish specifically > this thing, as the API is quite new to me. > > I have thought about setting Z_SET_ISREF_P() manually, but what else would I > need? From my understanding, I'd still need a new zval* for that. Any other > better ways?
You generally don't want to use references. Rather, you can keep the same zval* pointer as long as you increment/decrement its refcount (Z_ADDREF_P/zval_ptr_dtor) so that it correctly keeps track of how many pointers are pointing to it. Unless I misunderstood what you're trying to do, it's that easy. Best, > > Regards, > Flavius > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php > > -- Etienne Kneuss http://www.colder.ch -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php