Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re: Perlxs and C++ inheritance

by Anonymous Monk
on Apr 22, 2014 at 09:40 UTC ( [id://1083120]=note: print w/replies, xml ) Need Help??


in reply to Perlxs and C++ inheritance

When the object address is set into SV in descendant method wrapper, and is extracted in parent method wrapper, the address of the parent object will always same with the address of the descendant object. However, in some C++ cases, the address of an parent object is different from the address of the object itself. So the address may be incorrect.

However many times you use INT2PTR or PTR2IV , the integer that is the pointer that is the c/c++ object, should always remain the same... otherwise you're dealing with a different object

I think a minimal code which reproduces the problem is critical to diagnosing this :)

Replies are listed 'Best First'.
Re^2: Perlxs and C++ inheritance
by llancet (Friar) on Apr 24, 2014 at 09:13 UTC
    Yes it is always remain the same. The problem is: sometimes C++ need it to be different. For example, in multiple inheritance:
    class Base1 {}; class Base2 {}; class Derived: public Base1, Base2 {}; ... Derived* obj = new Derived(); Base2* base_pointer = static_cast<Base2*> obj;

      I don't understand :)(not that I did understand better before)

        I asked this question on StackOverflow from the aspect of C++. There are some guys provided useful hints:

        http://stackoverflow.com/questions/23451982/is-it-unsafe-to-store-derived-object-to-void-then-cast-base-object-out-of-it

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1083120]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others exploiting the Monastery: (2)
As of 2026-03-15 04:56 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?
    hippoepoptai's answer Re: how do I set a cookie and redirect was blessed by hippo!
    erzuuliAnonymous Monks are no longer allowed to use Super Search, due to an excessive use of this resource by robots.