C++编译器认为的指针类型(静态联编)

诗远

关注

阅读 56

2022-06-14

/*
* 编译器认为的指针类型
编译器看到的是类X的指针,那么就会认为通过它访问的就应该是类X的成员;而不会分析指针所指的对象是类X本身还是类X的派生类(如果是多态语句就会是看指针所指的对象的类型了来决定访问那个类的成员)
在静态联编中,即:编译器看到的是哪个类的指针,那么就会认为通过它访问的,就应该是哪个类的成员;
*/
#include < iostream >
using namespace std;
class A
{
public:
void Print()
{
cout << "A::Print" << endl;
}
};/*类和类之间用;隔开*/

class B :public A
{
public:
void Print()
{
cout << "B::Print" << endl;
}
};

int main()
{
A a;
B b;


A* pa = &a;
B* pb = &b;

pa->Print();
pa = pb;
pa->Print();


return 0;
}

C++编译器认为的指针类型(静态联编)_ios


精彩评论(0)

0 0 举报