当前位置:首页 > 日记 > 正文

在C++中引用和指针的区别一个详细的例子

在C++中引用和指针的区别一个详细的例子
在C++中引用和指针的区别一个详细的例子

引用是C++引入并不是为了明确指称的概念在C.的存在,我们必须先了解变量的定义和引用的变量之间的差异。变量有两个元素:名称和空格。
引用不是变量。它只是变量的别名。它没有自己独立的空间。它只符合变量的名称,空间元素不满足。换句话说,引用需要与它引用的变量共享相同的内存空间,而对引用的更改实际上是修改引用的变量。
参数传递的类型及其关键点:
1按值传递值:参数不能修改参数的值,参数初始化参数,需要分配空间,然后引用内容被复制到参数中。

2参考传递:参数初始化参数时不需要为参数分配空间。

3个指针转移:本质或值转移,当参数初始化参数时,它仍然需要分配空间。如果需要修改指针的地址,就不可能简单地传递指针,而且必须使用***或*

下面讨论。
1参考概念

2 const引用

3引用作为参数传递。

4作为函数返回值的引用

5参考与指针的区别

1参考概念
请记住以下几点:
(1)引用是变量的别名,没有单独的空格。

(2)共享需要与它引用的变量共享的共享变量。

(3)对引用的更改实际上是对引用变量的更改。

(4)引用需要在定义的时候初始化。

(5)引用初始化不能用于rereference其他变量。
请看下面的例子:

主(空)
{
int = 100;
/ / / / int refVal;错误,引用必须被初始化
int val refVal =;

cout瓦尔=<<瓦尔<< endl;
refVal = 200; / /实际值的变量被改变
cout瓦尔=<<瓦尔<< endl;

int val2 = 500;
refVal = val2; / /这不是refVal引用变量val2代表,
/ /仅代表val2 refVal赋值,值
cout瓦尔=<<瓦尔<< endl;

返回0;
}
2 const引用
常量引用的要点如下:
(1)顾名思义,const引用是对const对象的引用。
(2)const引用可以引用非const对象,但非const引用不能引用const对象。

int = 200;
常量=

常量= 100;
int ref2 = B; / /错误,
(3)const引用的对象值是常量,不能修改。

常数= 200;
常量=;
REF = 100; /错误,引用的对象是常量,不能修改。

(4)const引用可以引用不同类型的变量,但会产生一个临时变量:

双A=3.14;
它产生的过程是:
生成一个临时变量TMP,数据可能会被截断。
引用;引用实际上是一个临时变量。
3引用作为参数传递。
引用作为参数是传递参数的其中之一。当参数初始化参数时,不需要分配内存空间,下面是一个示例:

空交换(int,int)
{
int =;
甲=乙;
b = TMP;
}

主()
{
int=20;
int=30;
交换(x,y);
cout << x << endl; / / x = 30;
cout << Y << endl; / / y = 20;
}
4作为函数返回值的引用
列出示例,如下所示:

a { } = { 1,2,3,4,5,6,7,8,9,0 };

int索引(int i)
{
返回一个{ };
}

主()
{
索引(3)= 100;
cout <<一{ 3 } << endl; / /输出:100

}
这是引用的另一个效果,可以放在赋值操作符的左边。索引函数返回一个{的引用,而对引用的修改将修改变量本身,所以{ 3 }被修改为100。

5参考与指针的区别

(1)访问引用是直接访问,访问指针是间接访问。

(2)引用是变量的别名,它本身不分离自己的内存空间,指针有自己的内存空间。

(3)参考初始化,没有其他变量可以被引用,指针可以被使用。

(4)尽可能使用引用,当指针还没有可用时使用指针。

谢谢你的阅读。我希望你能帮助你,谢谢你对这个站的支持。

相关文章

ps如何制作电子商务常用的一元二杀

ps如何制作电子商务常用的一元二杀

字体,常用,电脑软件,ps,Ldquo;一元秒杀这4个字;不是很熟悉啊,经常看到网上的促销活动,那么如何使用PS设计这4个字体 软件名称:Adobe PS图象处理软件8全绿色中文版软件大小:150.1mb更新时间:2015-11-04 1,新文件,用钢笔工具,快捷键为{ },画一条曲线。 …

oracle中直方图对执行计划影响的详

oracle中直方图对执行计划影响的详

直方图,执行计划,详细,电脑软件,oracle,前言 我们都知道,在Oracle数据库中,CBO将均匀分布的最小和最大之间low_value high_value目标列的数据,按照均匀分布的原则计算目标列表。 查询条件和基数的选择率。结果集 如果直方图是对收集到的目…

在ppt2013形状转换文本的特殊效果

在ppt2013形状转换文本的特殊效果

文本,转换,形状,特殊效果,电脑软件,在PPT的设计,文本也很重要,和必要的文字说明,让读者更好的理解作者的意图。以下是一个特殊的作用ppt2013形状转换你给你,希望对你有帮助。 ppt2013形状转换文字效果 1开始powerpoint2013,插入横向文本框,只要…

在PowerPoint中插入声音文件的方法

在PowerPoint中插入声音文件的方法

方法,声音文件,电脑软件,PowerPoint,让PowerPoint充满活力和音乐。下面我们将告诉你如何在PPT中插入语音文件。这里是一个方法的PowerPoint插入声音文件给萧边,希望能帮助你。 插入声音文件方法 (1)准备好声音文件(*,*,wav等)。 选定需要插入声…

为项目建立CSS错误VueCLI出台的原

为项目建立CSS错误VueCLI出台的原

出台,错误,项目,原因,电脑软件,我最近遇到对Vue的方式有问题。我在Vue CLI介绍CSS错误,我询问了很多信息。所以今天,我想做一个学习笔记。 1。问题描述 以前的项目建在Vue CLI介绍CSS main.js elementui图书馆,或其他文件中引入CSS文件(如应用…

oracle中三种实现方法

oracle中三种实现方法

方法,三种,电脑软件,oracle,1,标准SQL规范 1。单如果 如果v =那么… 最后如果; 2,如果…其他的 如果v =那么… 其他的 吨; 最后如果; 3,多重IF 如果v =那么… elsif V =然后… 吨; 最后我 注意:多如果is'elsif'not其他如果 2、解码功能 解码(价…

PS如何制作火焰电影海报

PS如何制作火焰电影海报

电影海报,火焰,电脑软件,PS,这个PS教程的重点是产生划痕的火焰的一部分,包括两个部分:金属裂纹和火焰。看似简单的效果,包含的细节非常多,有很多在高光和阴影的裂缝描述火焰,也需要使用不同的颜色来描绘这种效果更为突出。让我们了解一下它。 P…

如何处理图形CDR美化教程

如何处理图形CDR美化教程

教程,图形,如何处理,电脑软件,CDR,CorelDRAW软件绘制插图的主要应用,编辑的许多方面和美化位图。CorelDraw软件是用来设计名片,排版,网页设计的许多方面,包括用CorelDraw软件的三维图形设计可以快速完成。让我们从下面的学习。 软件名称:CorelD…

PS图象处理软件合成道路移动的摇滚

PS图象处理软件合成道路移动的摇滚

图象,处理软件,吉他,海报,摇滚,虽然这只是一个简单的吉他,但作者在设计时加入了许多动态元素,很好地衬托出吉他释放出的轻松愉快的心情。 最终效果 1。一个新的950x450大小,72像素的设计文档。 2,将与钢笔工具相扣的道路导入,将其转换为一点,反…

PHP观察器模式原理和简单实现方法

PHP观察器模式原理和简单实现方法

方法,模式,简单实现,示例,原理,本文介绍了PHP观察器的模型原理和简单实现方法,供大家参考,如下: 当一个对象的状态改变,从而影响其他物体的变化,并观察者模式可以用在这个时候。应用如WordPress,这是开发组开发的插件外,如用户授权,整体博客统计插…

如何屏蔽广告关闭iMessages(溶液)

如何屏蔽广告关闭iMessages(溶液)

屏蔽,溶液,广告,电脑软件,iMessages,问题: 苹果手机用户可以发送免费短信和即时信息,这是非常方便的,但即时信息广告很无聊。有什么方法可以去除广告屏幕或即时信息例如:关键词。 答案uff1a 有没有办法屏蔽的关键词,但可以在设置- > >的通知;信…

jQueryEasyUI美元。分析器

jQueryEasyUI美元。分析器

美元,分析器,电脑软件,jQueryEasyUI,解析器(解析器) 对象的属性和方法: 使用uff1a parser.auto =假美元; parser.plugins = { 美元。 parser.oncomplete =美元。 函数(){ 警报(); }; $(函数(){()) 美元。parser.parse(# divnorth ); 以上是jQuery EasyUI $…