`

引用小结

 
阅读更多

------------------------------------
引用的特点
------------------------------------

引用是比指针更专一的东西:
引用一经定义,就不能改户口了,永远指向属主,而且没有自己的地址。

引用具有类型,而数组、void(不算类型)、NULL,等不能使用引用。
引用与指针的区别:指针的指向可以更改、指针有自己的地址,引用都没有这两个特性。

------------------------------------
错误的使用例子
-------------------------------------------

int a;
int &ra = a; ra、a都是int类型。
int &*p = &ra; error!
 int (& (*p) ),从外往里边看,是一个int类型的引用,
 再往里是一个*p,而*p的类型是int & ?所以是错误的,因为没有int &这种类型。

int * &p => 这样才是正确的,代表int* 类型的引用,也就是引用一个int类型的指针。


-------------------------------------------
引用的潜在误解
-------------------------------------------

一、重载方法
void fn(int n)
void fn(int &t)
引用的类型是int,故两者类型是一样的,无法重载参数类型相同的方法。

二、引用使参数容易看成是值传递,以为是局部变量操作,从而导致变量错误修改。


------------------------------------
引用的使用
------------------------------------
一、引用作为参数,别样的返回值
二、引用作为return的对象。一般函数返回值时会生成副本(函数需要销毁本身,故生成结果的副本)

 

分享到:
评论

相关推荐

    day09【常用API、引用类型小结】_pojie_

    在“day09【常用API、引用类型小结】”的学习中,我们可能会涉及到以下关键知识点: 1. **常用API**:这部分可能涵盖各种常用库,例如Java的`java.util`包,其中包含集合框架(如ArrayList、HashMap)、日期时间...

    java小结

    #### 小结 通过以上内容,我们对Java的基础知识有了更深入的理解。了解这些基础知识对于编程非常重要,特别是对于初学者来说。掌握了这些概念后,你可以更好地理解和编写Java代码,同时也能避免一些常见的错误和...

    JavaScript中各种引用类型的常用操作方法小结

    它支持多种数据类型,其中引用类型包括Array(数组)、Object(对象)、Date(日期)、RegExp(正则表达式)等。这些引用类型提供了丰富的操作方法,使得数据的处理变得更加灵活和强大。接下来,我们将详细介绍这些...

    const extern static volatile 小结

    ### const extern static volatile 小结 #### 一、Const(常量) `const` 关键字在 C/C++ 语言中用于定义常量,即其值在程序运行期间不可更改的变量。`const` 可以与多种数据类型结合使用,例如 `const int x = 10...

    VBA代码中引用Excel工作表中单元格区域的方式小结

    在VBA(Visual Basic for Applications)中操作Excel工作表时,正确引用单元格区域是实现自动化数据处理的关键技能之一。本文将深入解析VBA代码中引用Excel工作表中单元格区域的各种方式,帮助读者掌握这一核心技能...

    安卓知识小结第一章

    【Android知识小结第一章】 本章节主要涵盖了Android开发中的一些核心知识点,特别是针对面试中常见的问题进行了总结。以下是对这些知识点的详细解释: 1. 开启多进程:在Android中,可以通过在AndroidManifest....

    Java 正则表达式小结

    - `(abc)`创建一个捕获组,可以使用`\1`引用该组的内容。 - `(?:abc)`创建非捕获组,仅用于逻辑分组,不参与引用。 9. **选择与断言** - `a|b`表示'a'或'b'。 - `(?=abc)`正向前瞻断言,表示后面必须跟'abc'。 ...

    Java 垃圾回收小结(一)

    本文将对Java垃圾回收进行小结,探讨其基本原理、类型以及常见算法。 1. 基本原理: Java中的内存分为堆(Heap)和栈(Stack)两部分,垃圾回收主要关注堆内存。当一个对象不再被任何引用指向时,它被视为可回收的...

    SQL增删改查小结

    在这个“SQL增删改查小结”中,我们重点讨论了SQL的基本语句、数据库引擎、数据库对象以及如何执行CRUD操作(创建、读取、更新、删除)。 首先,数据库引擎的选择对数据库性能有很大影响。ISAM引擎在读取操作上速度...

    预测控制课程小结要求1

    撰写预测控制课程小结时,无论选择哪种类别,学生都应确保对相关文献的深入理解和消化吸收,避免直接引用或翻译。学生需要用自己的语言表述观点,并在可能的情况下提出独立的见解。所有引用的文献应规范引用,保持...

    Java中类的继承学习小结

    下面是对"Java中类的继承学习小结"的详细讲解。 首先,类的继承使用关键字`extends`来实现。子类(也称为派生类)声明时,会指定一个父类(或超类): ```java public class DerivedClass extends BaseClass { //...

    我的软件设计模式小结

    例如,在一个聊天应用中,用户和用户之间并不直接通信,而是通过服务器(即中介者)来转发消息,这样可以避免用户对象之间产生直接的引用,使得系统更加灵活和易于维护。 这三种设计模式各有其独特价值,它们在软件...

    RMI入门小结

    这篇博客“RMI入门小结”主要探讨了RMI的基础概念、实现步骤以及常见问题。 1. RMI的基本原理: RMI的核心是通过接口定义服务,服务端实现接口,并将实现类注册到RMI注册表中。客户端通过引用远程接口,即可调用...

    网页中各种链接引用方法小结

    网页中的链接引用是构建动态和交互式网页的关键技术之一,主要涉及到CSS、JavaScript、图片以及其他资源的引用。本文将详细阐述四种常见的链接引用方法及其优缺点。 1. **绝对路径引用**: - 语法:`...

    JavaScript中各种引用类型的常用操作方法小结_.docx

    JavaScript中的引用类型主要包括Object、Array、Date和RegExp等,这些类型在编程中有着广泛的应用,以下是对它们常用操作方法的详细解析。 **Object类型** 在JavaScript中,Object是最基础的数据结构,可以用来创建...

    C#与java相似点和差异小结.doc

    以下是关于这两种语言相似点和差异的小结: 1. **源文件约定**: - **C#** 允许一个源文件(.cs)中包含多个顶级公共类,文件名不必与类名相同。 - **Java** 则要求每个源文件(.java)只能有一个顶级类,且文件名...

    大学生寒假思想小结(二篇).docx

    随着社会的快速发展和就业形势的变化,大学生在寒假期间进行思想小结已经成为一种自我提升的重要途径。通过对过去一学期学习和生活的深刻反思,以及对未来的细致规划,大学生们在思想上得以成熟,人格上得以成长。...

    工作小结PPT模板

    工作小结PPT模板是专业人士用来总结和呈现工作成果、经验与反思的重要工具。它能够帮助我们有效地组织信息,清晰地展示工作流程,以及向团队或领导汇报工作进展。以下是一些关于创建和使用工作小结PPT模板的关键知识...

    C调用dll小结

    本文将基于提供的标题“C调用dll小结”进行深入探讨,主要涉及如何在C语言中调用DLL中的函数。 首先,我们需要了解DLL的工作原理。DLL文件包含一组可执行的函数和数据,它们可以在运行时被多个进程加载。当一个程序...

Global site tag (gtag.js) - Google Analytics