Как я могу разыменовать этого участника? - PullRequest
0 голосов
/ 01 февраля 2012
struct myStruct
{
    myClass* member;
}

myStruct *s = (myStruct*) someVariable;

Теперь я хочу, чтобы значение из s->member вошло в myFunction (myClass c).Как мне разыменовать это?

Ответы [ 2 ]

2 голосов
/ 01 февраля 2012

Таким образом:

*(s->member) <------ Gives you a `myClass` object 

То же, что вы делаете для указателей со структурами.

void myFunction (myClass c)
{


}

называйте его как:

int main()
{
    myFunction(*(s->member));
    return 0;
}
1 голос
/ 01 февраля 2012

Вы можете разыменовать указатели, используя operator*. В этом случае вы бы сделали *s->member. Нет необходимости в скобках вокруг s->member.

На самом деле, неясно, почему вы кастуете someVariable на myStruct*.

Вам также не хватает ; после определения структуры.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...