最新文章专题视频专题关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
苹果平板内存怎么清理 华为nove手机有扫描功能吗 华为手机怎么关应用 如何在word中删除空白页 苹果怎么清理平板内存 华为手机怎么关闭应用 惠普m227打印机怎么复印身份证正反面 网课怎么投放在电视上 苹果平板4怎么清理内存 无法共享网络打印机怎么办 苹果7刷机失败后怎么恢复正常 华为手机怎么清除后台 怎么清理苹果平板的内存 自己qq空间的照片怎么批量下载到电脑上 苹果8边框磕碰怎么修复 华为手机怎么关闭运行 用电脑怎么在图片上打标记 苹果平板ipad2怎么清理内存 eeid学生账号怎么查询 怎么在word中添加字体 win10系统如何关闭开机启动项 oppo手机怎么互传相册 苹果平板的内存怎么清理 华为手机怎么关闭程序 ps怎么平均切图片 在苹果平板上怎么清理内存 电视盒子怎么下载软件 别人陌陌视频怎么保存 美团异地购买怎么弄 怎么样从陌陌上下载视频 苹果平板电脑怎么清理内存垃圾 墙壁发霉怎么办 手机qq如何设置照片墙 如何保存陌陌里的视频 苹果平板怎么清理垃圾内存 自己怎么建一个微信群 怎么压缩电影大小不损画质视频 别人发的陌陌视频怎么保存 苹果迷你平板怎么清理内存 win10安全模式怎么退
当前位置: 首页 - 科技 - 知识百科 - 正文

新手入门:C++下的引用类型

来源:懂视网 责编:小采 时间:2020-11-27 22:45:44
文档

新手入门:C++下的引用类型

新手入门:C++下的引用类型: 引用类型也称别名,它是个很有趣的东西。在c++ 下你可以把它看作是另外的一种指针,通过引用类型我们同样也可以间接的操作对象,引用类型主要是用在函数的形式参数上,通常我们使用它是把类对象传递给一个函数。 引用对象采用类型名加上&符号和名称的方式进
推荐度:
导读新手入门:C++下的引用类型: 引用类型也称别名,它是个很有趣的东西。在c++ 下你可以把它看作是另外的一种指针,通过引用类型我们同样也可以间接的操作对象,引用类型主要是用在函数的形式参数上,通常我们使用它是把类对象传递给一个函数。 引用对象采用类型名加上&符号和名称的方式进


引用类型也称别名,它是个很有趣的东西。在c++ 下你可以把它看作是另外的一种指针,通过引用类型我们同样也可以间接的操作对象,引用类型主要是用在函数的形式参数上,通常我们使用它是把类对象传递给一个函数。

  引用对象采用类型名加上&符号和名称的方式进行定义。例如:(int &test;),这里我们就定义了一个int类型的名为test 的引用,但是int &test;这样的方式是不能够被编译成功的,因为引用的定义必须同时给应用进行赋值操作,这里的赋值并不是说把变量的值传递给引用,而是把引用指向变量,写成这样就对了:(int &test=变量名;)。

#include <iostream
using namespace std; 

void main(void


int a=10; 
int &test=a; 
test=test+2; 

cout << &a << "|" << &test << "|" << a << "|" <<test << endl; 

cin.get(); 
}

  观察并编译运行上面的代码你会发现&a和&test的地址显示是相同的,a和test的值显示也是一样的!

  结合前一个教程的内容我们来说一下const引用的相关内容,这里要特别注意,和前一个教程一样带const修饰的引用同样也容易混淆概念!

  const修饰如果用在引用上会有一个特别之处,它的奥妙就在于可以进行不同类型的对象的初始化,而这一切在普通变量操作上是不可能的下面我们来看一个例子:

#include <iostream
using namespace std; 

void main(void


int a=10; 
//double &test = a + 1.2f; //这句就是错误的! 
const double &test = a + 1.2f; 

cout << &a << "|" << &test << "|" << a << "|" <<test << endl; 

cin.get(); 
}

  上面的代码足够说明问题了,这就是const修饰带来的好处,但是聪明的人会在输出的时候发现一个问题,就是a和test的值的输出不同,按照最先说的道理应该可以改变a的值呀,为什么在这里却有没有能够改变呢?

  道理是这样的,const修饰过后的引用在编译器内部是这样进行变化的。

int a=10; 
const double &test = a + 1.2f;

  这样的一段代码在编译器认为却是下面的方式进行的

int a=10; 
int temp = a; 
const double &test = temp + 12.f

  这里其实是把a的值赋给了一个临时temp 变量而后test获得的却是temp+12.f 改变的是temp而不是a,所以就出现了a和test显示的值不同的情况,这里要特别注意,这是一个很容易混淆的地方,在编写程序的时候要特别仔细,以免出现了问题却检查不出为什么

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:0731-84117792 E-MAIL:11247931@qq.com

文档

新手入门:C++下的引用类型

新手入门:C++下的引用类型: 引用类型也称别名,它是个很有趣的东西。在c++ 下你可以把它看作是另外的一种指针,通过引用类型我们同样也可以间接的操作对象,引用类型主要是用在函数的形式参数上,通常我们使用它是把类对象传递给一个函数。 引用对象采用类型名加上&符号和名称的方式进
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题c#入门程序专题c#程序入门专题c#入门语法专题c#简单入门专题c#入门后专题c+引用专题c++最基础代码专题编写c++的步骤专题c++的学习代码专题c++入门程序代码专题如何看懂c++专题c++练习代码专题c++代码练习专题c++适合初学者吗专题c++帮助文档专题c/c++帮助文档专题c++简单例子专题用c++入门专题c++初学代码专题c++类的例子专题
Top