gpt4 book ai didi

c++ - 从指向其类成员之一的指针计算类的指针

转载 作者:行者123 更新时间:2023-11-27 22:37:12 25 4
gpt4 key购买 nike

<分区>

有人告诉我,类的内存总是具有相同的结构:

因此,如果我有指向某个类成员的指针,我能否以某种方式计算指向该类的指针?

class num
{
public:
num() {}
int a;
int b;
};

int* ptr; // we have the pointer to num.b
num* number; // we want the pointer to num

是否可以只用“ptr”得到“number”?像这样:

num temp;
int diff = (void*)&temp - (void*)&temp.b;

num target;
int* ptr = &target.b;
num* number = (num*)((void*)ptr + diff);

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com