使用场合:流操作符<<和>>、赋值操作符=的返回值、拷贝构造函数的参数、赋值操作符=的参数、其他必要情况,都推荐使用引用。
引用小结
原创
©著作权归作者所有:来自51CTO博客作者祎桑的原创作品,请联系作者获取转载授权,否则将追究法律责任
1. 引用和指针的区别
指针通过某个指针变量指向一个对象后,对它所指向的变量进行进行间接操作。程序中使用指针,程序的可读性差。而引用本身就是目标变量的别名,对引用的操作就是对目标变量的操作。使用引用传递函数的参数,在内存中别没有产生实参的副本,它是直接对实参进行操作。而使用指针作为函数的参数,在被调函数中要给形参分配存储单元,且需要重复使用“*指针变量名”的形式进行运算,这很容易产生错误,且程序的阅读性差;另一方面,在主调函数的调用处,必须用变量的地址作为实参。而引用更容易使用,更清晰。
2.引用和多态的关系
引用是除指针外另一个可以产生多态效果的手段。这意味着,一个基类的引用可以指向它的派生类实例。
3.什么时候需要使用常引用
格式:const 类型标识符 &引用名 = 目标变量名
如果既要引用提高程序的效率,又要保护传递给函数的数据不在函数中被改变,就应使用常引用。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
309_common lisp引用小结
完整的emacs and lisp的学习集合整理如下
emacs 字符串 github -
Android Studio2.2.3 通过JNI引用ffmpeg库小结
Android Studio2.2.3 通过JNI引用ffmpeg库小结
android studio;ffmpe -
小结
Java基础Java集合框架Java集合——ArrayListJava集合——LinkedListJav
Java 并发集合 JVM -
小结:微服务框架发展小结
来自网易数帆的讲座,一个不错的微服务框架发展小结,如下选一些精华PPT。
java 微服务 服务框架 -
开发日常小结(24):Java的传值与传递引用之区别
2018年7月2日19:57:06
引用传递 堆栈 java -
STP 小结
STP小结
职场 STP 休闲 -
block使用小结、在arc中使用block、如何防止循环引用
引言使用block已经有一段时间了,感觉自己了解的还行,但是几天前看到CocoaChina上一个关于block的
循环引用 ico 内存管理 强引用 全局变量