c++ - Pointer passing to function header -


i have problem regarding pointers.

i have function following header:

 addactor (nxuphysicscollection &c, nxactor &a, const char *userproperties=0, const char *actorid=0) 

and trying use this:

 nxu::nxuphysicscollection* collection = new nxu::nxuphysicscollection();  nxactor* actor = *actors++;  nxu::addactor(collection, actor, null, null); 

but following error:

a reference of type "nxu::nxuphysicscollection&" (not const-qualified) cannot initialised value of type "nxu::nxuphysicscollection*" (this collection parameter, same error appears actor well)

how supposed pass collection , actor parameters function in order work properly?

i tried this:

 nxu::addactor(&collection, &actor, null, null); 

but doesn''t work either, gives me error:

 "initial value of reference non-const must lvalue." 

any appreciated.

edit: if use this:

nxu::addactor((nxu::nxuphysicscollection&)collection, (nxactor&)actor, null, null); 

it not give me errors anymore. correct?

i must mention nxu , nx namespaces closed source , cannot modify way implemented

since formal arguments of member function c , a references, while collection , actor pointers, need dereference pointers make them compatible references:

// no need pass nulls defaulted parameters, // trailing null, null removed. nxu::addactor(*collection, *actor); 

alternatively, can change signature of constructor accept pointers instead of references:

addactor (nxuphysicscollection *c, nxactor *a, const char *userproperties=0, const char *actorid=0) //                             ^           ^ //                             |           | //                             here , here 

Comments

Popular posts from this blog

blackberry 10 - how to add multiple markers on the google map just by url? -

php - guestbook returning database data to flash -

delphi - Dynamic file type icon -