I'll add a further thought.

If you find a way to call a C++ method from Pascal, you need to know
three things:

1. The address of the function.

2. The function arguments and

3. The value of the instance variable ('this')

If you think of the instance variable as a handle and just another
function argument then there ain't much difference (from the Pascal
point of view) between calling a C++ function and a 'C' function expect
(a) with 'C' the function address is easy to get from the shared object
and the order that you push the handle and other arguments on the stack
is well defined, while (b) with C++ the call is C++ compiler dependent
and you need to navigate a vtable to find the function address and how
and where you push the instance variable on the stack is opaque.

In a nutshell, that's why a 'C' binding is so much more Pascal friendly
than is C++.

On 31/07/14 21:06, Tom Coleman wrote:
>
> I likeTony's thought about a 'C' binding being 'basic'.  
>
> I just looked through the freetds sources (0.82) and there's not a
> .C++ file to be found.  
>
> Oracle only provides a handful of C++ OCI examples in their
> distribution.  The majority of the test files are plain 'C'.
>
> On Jul 31, 2014, at 11:59 AM, marius adrian popa wrote:
>
>> There are a few directions for interfaces
>> What is needed is cleaner c++ interface that can be used from other
>> languages : Delphi or with a easy wrapper around and it should be
>> workable state in the examples area
>
>
> On Jul 29, 2014, at 6:08 PM, Tony Whyman wrote:
>
>> This is a key point. The "real" API is the application protocol - the
>> rest is just language bindings.*You need to start with a basic 'C' style
>> lowest common denominator binding* and then add "better" ones, whether
>> that's C++, JDBC or whatever, and whether they use the basic API or go
>> direct to the wire is implementation detail.
>
>
>
>
>
>
>
> ------------------------------------------------------------------------------
> 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

------------------------------------------------------------------------------
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

Reply via email to