Accessing a C++ class via pointer from a Delphi DLL

Here's one for the gurus:

I want to access a C++ class from a Delphi DLL - the C++ portion is a
server that passes a pointer to a C++ class via a DLL call.  For
example, the server calls Process(pclass:pointer) in the DLL where
pclass is the pointer to an already initialized class.  The DLL can
then use the methods within the class to perform tasks such as reading
and writing data to/from the server.

What I have found is that the C++ class  has essentially the same
structure as a Delphi class.  That is, the pointer to the class points
to a memory structure that contains a pointer to the class methods and
then the variables of the class.  The class methods are a table of
pointers to each method.

<classpointer>----><methods table pointer>----><methods table
(pointers to all methods)>

I have looked high and low for code to do this (I was told that this
can be done somehow since the C++ class has no overloading).

From what I have accomplished so far, it seems that the parameter
passing from Delphi to the C++ class is no good in the code that I
have now.

If anyone can shed some light on this I would appreciate it.