[DotGNU]Strategy for dealing with C++ virtual functions in a managed binding.

Adam Treat manyoso at yahoo.com
Fri Dec 6 04:35:09 GMT 2002


On Thursday 05 December 2002 11:10 pm, Neil Cawse wrote:

> So if you got down this far ;) now what you have is:
> using a single command you can reuse all the great c++ libraries in c#.
> Sounds good?!
>
> I think this route is the most robust and sensible way of reuse. Do you
> agree? Will this be useful?
> I need to finish the work and then convince Dave to add this into his Swig
> project. Swig offers pretty complete support of c++ including templates,
> virtual methods - take a look at the website. Quite a lot of work remains
> to make sure we are writing decent c# code, to finish off and thoroughly
> test. I havnt had the time to even try it on a c++ library bigger than the
> example above - but I will!
>

That is a good example of how to call c++ from C#, but it essentially does 
what we are already doing with Qt#.  We already have an intermediate C 
library and we are looking for ways to reduce that to an absolute minimum 
size.  We also are working on a new parser/generator called 'binge' that will 
automatically bind C++ API's to C# and the CLR.  It is being created 
specifically for Qt# and eventually KDE#, but we are designing it to produce 
bindings for any C++ library with an easy extension.  Marcus, has even come 
up with a way to handle transparent overrides of C++ virtual methods from C#.  
Of course, we are looking for any and all ideas on how to minimize the 
overhead and C library size.  If you are interested in more, please come by 
and see us:  IRC openprojects.net #qtsharp.

Cheers,

Adam




More information about the kde-core-devel mailing list