From: William S F. <ws...@fu...> - 2007-04-29 07:54:43
|
gga wrote: > sw...@m4... wrote: >> Is it possible to use %extend and access a private cpp variable? > > No. It is a feature (read: misfeature) of C++ that private elements > cannot be accessed. > You can only work around it if you use pointers and guesstimate where > the private variable is aligned in the class. See below. > >> I hava >> not found anything in the docs that is allowing this and suspect there >> will be no way. Correct? >> > > There is at least one way I found to access "protected" elements. > > For protected elements or functions, you can avoid hacking the .h file > if you create your own proxy class that adds a method to access it. > Unfortunately, this also means your .i file and .h file need to be kept > in sync, as you will need to list all of your class methods. I wish it > was possible to avoid this somehow, but have not found a way yet. > If you use directors, protected virtual methods are accessible. Only the virtual methods are available, ie, protected non-virtual methods, protected static methods, protected static variables and protected member variables are not available. Directors could be extended to make these available though. William |