virtual +指针,引用 => 滞后联编

来源:互联网 发布:网络文明正能量 编辑:程序博客网 时间:2024/05/16 06:18

滞后联编只有在virtual函数支持时才起作用;

virtual +指针,引用 => 滞后联编

非virtual函数的时候,即使使用指针,引用也不能使用其动态类型

class B
{
public:
 B(){a = 3; b = 33;}
 int a;
private:
 int b;
};

class D:public B
{
public:
 D(){c = 333; d = 3333;}
 int c;
private:
 int d;
};

int main()
{
 D d;
 cout << d.a << endl;
 B &rb = d;
 cout << rb.c << endl; //err
 B *pb = &d;
 cout << pb -> c << endl; //err
 return 0;

原创粉丝点击