概述
class BaseA
{
public:
int a;
};
class BaseB
{
public:
double b;
};
class Derived : public BaseA, public BaseB
{
};
int main(int argc, char const *argv[])
{
Derived derivd;
Derived* pd = &derivd;
BaseB* pb = &derivd;
printf("pb = %pn", pb);
printf("pd = %pn", pd);
if (pb == pd)
{
printf("pb == pdn");
}
else
{
printf("pb != pdn");
}
}
打印:
pb = 0028FEE0
pd = 0028FED8
pb == pd
2、结论
虽然两个指针的值不同,但是编译器认为它们还是相等的,因为它们指向同一个对象。
所以直接用if(p1 == p2)判断即可
最后
以上就是魔幻玫瑰为你收集整理的C++判断两个指针指向的对象是否相同的全部内容,希望文章能够帮你解决C++判断两个指针指向的对象是否相同所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复