Java教程

2021-10-05

本文主要是介绍2021-10-05,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Node *& head:

Int *&是专门给指针的引用(reference of pointer)的,一般给数组(array)

Int * 就是一般的指针变量(pointer)

功能上是一样的

就如 int a 和 int&

Reference(引用) 一定要赋值

 

这里建立链表的时候为什么要用LNode *&head来建表?

& 在c语言中,叫做取地址符号

& 在数据结构中(c++)中,作为参数的时候叫做引用类型(引用调用) ,它作为形参的时候,主调函数会把实参的地址传递给形参,形参所做的变化会传递给实参,主调函数的实参也跟着变化,不用return。

  这个引用类型的就是实参的地址传给形参,他两共同使用一个地址单元

因为这里的head的值不能被别的赋值

 

Reference(引用)一定要在定义的时候赋值

不能重新赋值

这里的head 是指针变量

一开始赋值的地址不可以改

和int *const(C语言中,const 的作用是把变量变为一个只读的变量。) 一样

int * const p
这里 const 修饰的是 p,所以 p 中存放的内存单元的地址不可变,但内存单元中的内容是可变的。即 p 的指向不可变,p 所指向的内存单元的内容可变。
此时,p 中存放的内存单元的地址,必须在定义的同时初始化

内存单元的地址和内容就和酒店的房间号和房间里的顾客一样  指针指向的是地址

也就是说head指针(地址)不可以变

算是一种保护机制

Node *head

相当于定义了一个int *p , p是指针变量 定义了一个Node类型的指针变量head

两的区别:

他们两个的head都是指针变量,区别在于一个是引用类型,一个不是引用类型

引用类型在建链表的时候用到

这篇关于2021-10-05的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!