水浒传鲁智深 2020-05-28 09:51 采纳率: 33.3%
浏览 647

在C++中,我定义了一个类A,再用这个类定义 “A& a;”这个和A a的区别是什么?

1、描述问题:

在C++中,我定义了一个类A,再用这个类定义 “A& a;”这个和A a的区别是什么?

A&是什么类型?是类的引用吗?有什么作用呢?

#include <iostream>
#include <cstdio>

using namespace std;

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

int main() {

    B b;
    A& a = b; //A&  是什么类型?是类的引用吗?有什么作用呢?
    a.print();

    return 0;
}
  • 写回答

1条回答 默认 最新

  • 烫手的热山药 2020-05-28 10:35
    关注

    A& 是类A的引用类型
    作用:提高程序的安全性,而且不会分配空间。

    评论

报告相同问题?