引用的一些规则

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了引用的一些规则相关的知识,希望对你有一定的参考价值。

引用:

  int &n = m;

  n相当于m的别名(绰号),对n任何操作就是对m的操作,n既不是m的拷贝,也不是m的指针,其实n就是m它自己。

引用的一些规则:

(1)引用被创建的同时必须初始化(指针则可以在任何时候被初始化)。

(2)不能有NULL引用,引用必须与合法的存储单元关联(指针则可以是NULL)。

(3)一旦引用被初始化,就不能改变引用的关系(指针可以随时改变所指的对象)。

int i =5 ;

int j = 6 ;

int &k = i;

k = j ;  // k 和 j 的值都变成了6

  c++中,函数的参数和返回值的传递方式有三种:值传递,指针传递和引用传递。

值传递:

  void Fun1(int x)

  {

    x = x + 10;

  } 

  void Fun2(int *x)

  {

    (*x) = (*x) + 10;

  }

  void Fun3(int &x)

  {

    x = s+10;

  }

  ......

  int n=0;

  Fun1(n);

  Fun2(& n);

  Fun3(n);

  cout<<"  n = "<< n <<endl;       //n=0

  cout<< " n = "<< n << endl;     //n=10

  cout<<" n = "<< n <<endl;      //n=10

 

以上是关于引用的一些规则的主要内容,如果未能解决你的问题,请参考以下文章

在等号左侧使用右值引用的规则是啥?

1:CSS中一些@规则的用法小结 2: @media用法详解

找不到引用的类/找不到引用的方法

Java:何时是一个被引用的变量

GCC 7,aligned_storage 和“取消引用类型双关指针将破坏严格别名规则”

Web | JavaScript的引用数据类型强制转换类型