分类: C/C++
2006-07-28 12:53:08
#include "stdafx.h"
#include <iostream>
using namespace std;
class justtest1
{
public:
virtual void display()
{
cout<<"justtest1"<<en
}
};
class justtest2:public justtest1
{
public:
virtual void display()
{
cout<<"justtest2"<<en
}
};
void displayclassname(justtest1 test)
{
test.display ();
}
void displayclassname2 (justtest1& test)
{
test.display ();
}
int main(int argc, char* argv[])
{
justtest
justtest2 b;
a.display ();
b.display ();
displayclassname(b); //输出结果是test1,
//在不使用引用的情况下会发生slicing(切割)
displayclassname2(b);//输出结果是test2
//使用了reference,情况没改变
return 0;
}
以后C++中一律使用引用传值