comp.lang.ada
 help / color / mirror / Atom feed
From: Brian May <bam@snoopy.apana.org.au>
Subject: Re: Calling C++ methods from Ada..
Date: Thu, 02 Dec 2004 15:36:55 +1100
Date: 2004-12-02T15:36:55+11:00	[thread overview]
Message-ID: <sa41xe9mi3c.fsf@snoopy.apana.org.au> (raw)
In-Reply-To: e8f9995c.0412011311.754046da@posting.google.com

>>>>> "Ganesh" == Ganesh Ramasivan <ganesh.ramasivan@gdcanada.com> writes:


    Ganesh> procedure CppTest is

    Ganesh> procedure SET_TIME (hour: System.Address); pragma
    Ganesh> import(CPP, SET_TIME, "Time::SetTime");

    Ganesh> begin null; end CppTest;

Is Time::SetTime a static member function? You didn't give the
definition in your E-Mail so I can't tell..

If it isn't, then it is a class method, and requires a hidden *this
parameter.

Furthermore, if it is a virtual function, then a static binding may
not be appropriate.

Check the GNAT reference manual for details on the following pragmas
(section 10.2 Interfacing to C++):

pragma CPP_Class
pragma CPP_Constructor
pragma CPP_Vtable

Note I haven't used any of these, don't understand (yet) how to use
them, and I don't know of any examples (do a web search).
-- 
Brian May <bam@snoopy.apana.org.au>



      parent reply	other threads:[~2004-12-02  4:36 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-12-01 21:11 Calling C++ methods from Ada Ganesh Ramasivan
2004-12-01 23:05 ` Luke A. Guest
2004-12-02  0:21   ` Jeff C r e e.m
2004-12-02 11:12   ` Brian May
2004-12-02 21:32     ` Luke A. Guest
2004-12-02 21:49       ` Adrien Plisson
2004-12-03  8:59       ` Martin Krischik
2004-12-03 13:55         ` Luke A. Guest
2004-12-03 13:58         ` Luke A. Guest
2004-12-04 10:09           ` Brian May
2004-12-03 14:06         ` Luke A. Guest
2004-12-04 13:22           ` Georg Bauhaus
2004-12-05  1:51             ` David Botton
2004-12-02  4:36 ` Brian May [this message]
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox