一、传引用

#include "stdafx.h"
#include <iostream>
using namespace std;

class A
{
public:
    virtual void show(){cout<<"A"<<endl;}
};
class B:public A
{
public:
    virtual void show(){cout<<"B"<<endl;}
};
class C:public A
{
public:
    virtual void show(){cout<<"C"<<endl;}
};

void show(A &a)   //void show (A a)
{
    a.show();
}

int main()
{
    A a;
    B b;
    C c;
    show(a);
    show(b);
    show(c);
    return 0;
}

执行结果:

类对象做函数参数(传值和传引用)

二、传值

#include "stdafx.h"
#include <iostream>
using namespace std;

class A
{
public:
    virtual void show(){cout<<"A"<<endl;}
};
class B:public A
{
public:
    virtual void show(){cout<<"B"<<endl;}
};
class C:public A
{
public:
    virtual void show(){cout<<"C"<<endl;}
};

void show (A a)//void show(A &a)   //void show (A a)
{
    a.show();
}

int main()
{
    A a;
    B b;
    C c;
    show(a);
    show(b);
    show(c);
    return 0;
}

类对象做函数参数(传值和传引用)

相关文章:

  • 2022-01-12
  • 2022-12-23
  • 2022-12-23
  • 2021-12-14
  • 2021-05-30
  • 2021-10-12
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-12-05
  • 2021-12-15
  • 2021-10-09
相关资源
相似解决方案