Confirmed users
381
edits
No edit summary |
No edit summary |
||
| Line 5: | Line 5: | ||
## Select one with the least descendants | ## Select one with the least descendants | ||
#Collapse the XPCom interface nsIClass class and the child nsClass that implements it | #Collapse the XPCom interface nsIClass class and the child nsClass that implements it | ||
##Not all member variables are defined in public headers, find out what member variables are declared in nsClass that are not defined in public headers and can not use a forward declaration. | ##Not all member variables are defined in public headers, find out what member variables are declared in nsClass that are not defined in public headers and can not use a forward declaration. Some options: | ||
##* Non-internal members into the base class, declare functions that use | ##* Move Non-internal members into the base class, declare functions that use internal members as virtual. This also requires a factory method in the base class to return the derived class. | ||
##* Make headers public, try again? | ##* Make headers public, try again? | ||
##'''Adds overhead:''' Rewrite them to form foo var to nsAutoPtr<foo> var. And add initializers for them to the constructor | ##'''Adds overhead:''' Rewrite them to form foo var to nsAutoPtr<foo> var. And add initializers for them to the constructor | ||