Next: Interfacing to COBOL, Previous: Interfacing to C, Up: Interfacing to Other Languages
The interface to C++ makes use of the following pragmas, which are primarily intended to be constructed automatically using a binding generator tool, although it is possible to construct them by hand. No suitable binding generator tool is supplied with GNAT though.
Using these pragmas it is possible to achieve complete inter-operability between Ada tagged types and C class definitions. See Implementation Defined Pragmas, for more details.
pragma CPP_Class ([Entity =>]
local_name)
pragma CPP_Constructor ([Entity =>]
local_name)
Import
) as corresponding to a C++ constructor.
pragma CPP_Vtable ...
CPP_Vtable
pragma can be present for each component of type
CPP.Interfaces.Vtable_Ptr
in a record to which pragma CPP_Class
applies.