gpt4 book ai didi

c++ - 检查哪个对象实例化函数调用的复杂测试

转载 作者:可可西里 更新时间:2023-11-01 16:35:40 26 4
gpt4 key购买 nike

我有一个结构(可以是类)并在另一个类中定义,如图所示

struct A{
somedata_A;
somespecificimplementation_A(someclass *S1);
};

class someclass{
somedata_someclass;
A a;
};

main(){
someclass c1, *c2;
c2 = &c1;
c1.a.somespecificimplementation_A(c2);
}

如何验证 c2 确实是 c1 的引用?请原谅我提出这个例子,因为很明显 c2 是 c1 的引用。

更新:A 不存储指向某个类的指针

最佳答案

如果您对 parent 一无所知,请比较成员的地址

void A::somespecificimplementation_A(someclass *S1)
{
if (this == &(S1->a)) {
// parent == S1
} else {
// parent != S1
}
}

关于c++ - 检查哪个对象实例化函数调用的复杂测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17717342/

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