C++学习第六课--引用

翻译 2015年11月19日 20:11:05

C++ references

call by reference

引用可以理解为变量的第二个名字,通过它可以到达变量的存储位置

但引用与指针的不同在于:指针可以通过改变,指向不同的变量,但引用只能指向一个变量,同时引用没有空的,且在刚开始就要初始化


int i=3;

int& a=i;

函数的参数:

void getexchange(int & x,int & y)
{
    int rent;
    rent=x;
    x=y;
    y=rent;
    return;
}

函数的返回值:

#include<isotream>
using namespace std;
double d[]={1.00,2.3,4.6,5.8};
double & getchange(int i)
{
  return d[i];
}
int main()
{
   int i, j=4;
   for(i=0;i<4;i++)
      {
        cout << d[i] << endl;
       }
    getchange(2)=3.3;
     for(i=0;i<4;i++)
      {
        cout << d[i] << endl;
       }
    return 0;
}

这个程序的结果就是将d[2]的值改变成3.3


引用参数返回的是一个隐形的指针,可以作为左值,也就是对其进行赋值

相关文章推荐

【OpenGL】nehe教程第六课学习笔记

nehe的第六课的内容是给六面的盒子贴上材质texture,流程主要分两步,一,利用glaux库的函数auxDIBImageLoad将图片从硬盘读到内存,再利用OpenGL的函数检测图片,给它打上"可...

IOS学习之斯坦福大学IOS开发课程笔记(第六课)

这节课主要讲述多个MVC是如何协同工作的。到目前为止,所有的课程都只是涉及到一个视图。从这节课开始,将会持到多视图应用的例子

机器学习第六课---SVM(1)

(1)在前几个课程学习过程中没有发现,后来才突然想到的一个问题是:为什么logistic 回归依然算是线性分类器呢?在logistic回归中,h(x) = g( \theta*x ),而这个g( z ...

学习嵌入式Linux系统开发基础 第六课(gcc与gdb)

gcc与gdb的简单应用

斯坦福大学公开课 iOS应用开发教程学习笔记(第六课)多个MVC的程序和故事版、UINavigationController、 Segues

斯坦福大学公开课 iOS应用开发教程学习笔记(第六课)多个MVC的程序和故事版、UINavigationController、 Segues 1、多个MVC 前面的程序都是一个MV...

jQuery 学习第六课 实现一个Ajax的TreeView

最终实现的效果是一个目录文件查看器,如图所示:    其原理是,当用户单击一个目录的时候,将这个目录的路径发送给服务器端,服务器端返回这个目录中的文件和目录信息。在服务器端,定义一个如下的类来表示...

数据库学习第六课

1,模糊查询 格式:select字段的集合  from  表名  where  某个字段的名字  like  匹配的条件 匹配的条件通常含有通配符 通配符: % select * from e...

第六课学习二

按计划,今天实现一个计数的功能,即按六个数码管进行计数累加显示,当右边一位值超过9时,则进一位,如此类推。 最开始时想采用取余的方式,一看一共有6个数码管,最大可达999999,当到达这个值后清零从...

Coursera公开课笔记: 斯坦福大学机器学习第六课“逻辑回归(Logistic Regression)”

斯坦福大学机器学习第六课"逻辑回归“学习笔记,本次课程主要包括7部分: 1) Classification(分类) 2) Hypothesis Representation 3) D...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)