LINUX.ORG.RU

История изменений

Исправление intelfx, (текущая версия) :

Имея производный объект, можно вызвать базовый метод. C++:

struct Parent
{
    void function_in_parent();
};

struct Child : Parent
{
    void function_in_child()
    {
        function_in_parent();
    }
};

C:

struct Parent
{
};

struct Child
{
    struct Parent _p;
};

void function_in_parent (Parent *p);

void function_in_child (Child *c);
{
    function_in_parent (&c->_p);
}

А обратно нельзя ни там, ни там, ни вообще в принципе.

Исходная версия intelfx, :

Имея производный объект, можно вызвать базовый метод. C++:

struct Parent
{
    void function_in_parent();
};

struct Child : Parent
{
    void function_in_child()
    {
        function_in_parent();
    }
};

C:

struct Parent
{
};

struct Child
{
    struct Parent _p;
};

void function_in_parent (Parent *p);

void function_in_child (Child *c);
{
    function_in_parent (&c->_p);
}

А обратно нельзя ни там, ни там, ни вообще в принципе.