C/C++教程

c++引用的作用

本文主要是介绍c++引用的作用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

在学习c++运算符重载时,需要对左移运算符进行重载,重载函数的声明如下:

void operator<<(ostream &cout,Person &p)       //person是自定义数据类型

问题 为什么ostream 需要引用

输出流不能拷贝,也就是说要传入输出流对象的参数只能是地址传递,不能值传递,iostream不允许复制,所以采用的引用

引用的作用是为了节省内存?

实际上引用占内存空间。编译器在一般将其实现为const指针,即指向位置不可变的指针。即引用实际上与一般指针同样占用内存。

引用的作用是什么

c++之父说的是:直接原因是为了支持运算符重载

顺便提一句,既然C++引入了引用,那为什么C++不和Java一样抛弃指针呢?答:为了兼容C语言。

 

假设没有引用,那么,用指针来operator overloading操作。 

 A operator +(const A *a, const A *_a);
那么使用的时候,&a + &b,这样看起来是不是很难受。

除此之外,

用指针的使用经常犯得错:1,操作空指针,2,操作野指针,3,不知不觉改变了指针的值,而后还以为该指针正常。如果我们要正确的使用指针,我们不得不人为地保证这三个条件。而引用的提出就解决了这个问题。
引用区别于指针的特性是 :1,不存在空引用(保证不操作空指针),2,必须初始化(保证不是野指针),3,一个引用永远指向他初始化的那个对象(保证指针值不变)。

 

参考连接

为什么 C++ 有指针了还要引用? - Rogn - 博客园 (cnblogs.com)

 

这篇关于c++引用的作用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!