07.08.2014 13:44, Adriano dos Santos Fernandes wrote: > Here you just mean to call the current (possibly inherited) addRef > method, but you need to prefix it with the interface name. And if you > don't, someone inheriting the implementation will have problems > difficult to understand. And it's a much more common case than calling a > super method. > > Underlines may be bad, and we may switch to something better.
Let's save some steps that left till the next round of this circle and start again with struct full of function pointers and thin class wrapper (with virtual methods for inheritance purpose) each of them look like this: class IInterface { private: IInterfaceVMT* VMT; public: Method(a,b,c) { LocalStatus status; VMT->realMethod(this, status, a, b , c); status->check(); // will throw if necessary } } where IInterfaceVMT is struct { void (*realMethod)(void*, IStatus*, a, b, c); } -- WBR, SD. ------------------------------------------------------------------------------ Infragistics Professional Build stunning WinForms apps today! Reboot your WinForms applications with our WinForms controls. Build a bridge from your legacy apps to the future. http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel