objective c - Why __bridge isn’t needed for constants from frameworks? -


today found constants frameworks aren’t needed have __bridge in cast statement. like:

nsstring *cast = (nsstring *) kuttypemovie; 

where

extern const cfstringref kuttypemovie __osx_available_starting(__mac_10_4,__iphone_3_0); 

i researched thinking const may affect , out of luck. 2 require __bridge cast:

const cfstringref cf_const; nsstring *ns_const = (nsstring *) cf_const; // arc bridge cast required  cfstringref cf_nonconst; nsstring *ns_nonconst = (nsstring *) cf_nonconst;  // arc bridge cast required 

so can explain this?

when see const cfstringref, constant reference string, means have variable containing reference somewhere, , not allowed assign variable. doesn't mean cfstringref itself.


Comments