• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C语言 > 简单介绍C++中变量的引用

简单介绍C++中变量的引用

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-28

通过本文主要向大家介绍了c++ 定义变量,c++中全局变量,c++声明变量,c++全局变量,c++定义全局变量等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

什么是变量的引用

对一个数据可以使用“引用(reference)”,这是C++对C的一个重要扩充,引用是一种新的变量类型,它的作用是为一个变量起一个别名。假如有一个变量a,想给它起一个别名b,可以这样写:

  int a;  //定义a是整型变量
  int &b=a;  //声明b是a的引用
</div>


以上语句声明了b是a的引用,即b是a的别名。经过这样的声明后,a或b的作用相同,都代表同一变量。

注意: 在上述声明中,&是引用声明符,并不代表地址。不要理解为“把a的值赋给b的地址”。声明变量b为引用类型,并不需要另外开辟内存单元来存放b的值。b和a占内存中的同一个存储单元,它们具有同一地址。声明b是a的引用,可以理解为: 使变量b具有变量a的地址。见下图,如果a的值是20,则b的值也是20。


在声明一个引用类型变量时,必须同时使之初始化,即声明它代表哪一个变量。在声明变量b是变量a的引用后,在它们所在函数执行期间,该引用类型变量b始终与其代表的变量a相联系,不能再作为其他变量的引用(别名)。下面的用法不对:

int a1, a2;
int &b=a1;
int &b=a2;  //企图使b又变成a2的引用(别名)是不行的
</div>


引用的简单使用

【例】引用和变量的关系。

#include <iostream>
#include <iomanip>
using namespace std;
int main( )
{
  int a=10;
  int &b=a; //声明b是a的引用
  a=a*a; //a的值变化了,b的值也应一起变化
  cout<<a<<setw(6)<<b<<endl;
  b=b/5; //b的值变化了,a的值也应一起变化
  cout<<b<<setw(6)<<a<<endl;
  return 0;
}
</div>

a的值开始为10,b是a的引用,它的值当然也应该是10,当a的值变为100(a*a的值)时,b的值也随之变为100。在输出a和b的值后,b的值变为20,显然a的值也应为20。运行记录如下:
100    100    (a和b的值都是100)
20    20    (a和b的值都是20)

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • C++面试题之数a、b的值互换(不使用中间变量)
  • C++通过自定义函数求一元二次方程的根
  • 简单介绍C++中变量的引用
  • 深入理解C++中变量的存储类别和属性
  • C++中的常量定义小结
  • C++中指向结构体变量的指针
  • C++多文件变量解析
  • 浅析C/C++变量在内存中的分布

相关文章

  • 2017-05-28函数式宏定义与普通函数的区别
  • 2017-05-28C++11的新特性简单汇总介绍 (一)
  • 2017-05-28C语言求圆周率的简单实现方法
  • 2017-05-28fcntl函数的使用详解
  • 2017-05-28C程序读取键盘码的方法
  • 2017-05-28C++你最好不要做的几点小结
  • 2017-05-28详解C++设计模式编程中责任链模式的应用
  • 2017-05-28VC中SDK与MFC的区别浅析
  • 2017-05-28VC++实现模拟汉诺塔效果
  • 2017-05-28C++命名空间实例解析

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • C/C++ 公有继承、保护继承和私有继承的对比详解
    • C++中vector和map的删除方法(推荐)
    • C++设计模式之命令模式
    • C++实现的泛型List类分享
    • 编程时请选择正确的输入法,严格区分中英文
    • C++检查某个文件或目录是否存在的函数
    • C++求1到n中1出现的次数以及数的二进制表示中1的个数
    • 实例讲解C++编程中对设计模式中的原型模式的使用
    • C++ 11实现检查是否存在特定的成员函数
    • 解析C++编程中异常相关的堆栈展开和throw()异常规范

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有