On 06/08/2014 08:48, Alex Peshkoff wrote:
>> , but I see a more big problem.
>>
>> The implementation rely on method shadowing.
>>
>> So if I have
>>
>> Impl : Interface
>> {
>> void method1()
>> {
>> method2();
>> }
>>
>> method2()
>> {
>> }
>> }
>>
>> and
>>
>> ImplSpecialization : Impl // Not supported by yours headers, but
>> should be IMO
>> {
>> method2()
>> {
>> }
>> }
>>
>> When calling method1() from ImplSpecialization instance, it will call
>> Impl::method2 instead of ImplSpecialization::method2. Do you have some
>> suggestion for this?
> I've tried to emulate it and see no problems.
>
>
It's not the same thing I talked about.
To emulate it, in your Base, you must have a method calling (via C++)
another interface (C++) method.
It will call the static method.
Then create a Inherited from Base and override the called method, but it
will override only via the C vtable, but not in the Base callee method.
Adriano
------------------------------------------------------------------------------
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