1. 调用函数时,实参会传递给形参,叫做参数传递。

2. 根据实际参数的类型不同,函数参数的传递方式可分为 2 种,分别为值传递和引用(地址)传递:

  1. 值传递:传递的实参类型为不可变类型(字符串、数字、元组);对象本身不允许修改,数值的修改实际上是让变量指向了一个新的对象。
  2. 引用(地址)传递:传递的实参类型为可变类型(列表,字典);

值传递和引用传递的区别:

值传递后,形参变,实参不变;实质是:实参的复制品传递给了形参,复制品变,但是实参并不变。

引用传递后,形参变,实参变。

3. 实质:

引用传递其实是传递的实参的地址,本质也是值传递,不过形参是复制的引用,也就是对象的地址,修改了形参的值,本质上是修改了同一个地址的对象。引用传递的本质是以值传递的方式传递对象(列表,字典)的地址。引用变量(其实就是一个指针)指向可变对象。

最新文章

  1. (转载)基于LBS地图的开发,满足地图上有头像的需求
  2. WPF资源使用
  3. HDU 3790 最短路径问题【Dijkstra】
  4. 为Activity设置特定权限才能启动
  5. js 验证表单 js提交验证类
  6. Azure Storage Client Library 重试策略建议
  7. 如何隐藏DLL中,导出函数的名称?(转)
  8. GDG shanghai programming one hour by JavaScript
  9. php 面向对象的三大特性
  10. 【Ubuntu16】apt-get安装MariaDB
  11. oracle sql*plus常用命令
  12. 学习笔记02(随便看看mybatis源码)
  13. ubuntu16.04安装maven
  14. atom 为什么启动terminal是总是打开是用户目录?
  15. topcoder srm 709 div1
  16. @1-4使用Xpath解析豆瓣短评
  17. C语言short int
  18. 20165318 2017-2018-2 《Java程序设计》第七周学习总结
  19. flask接收前台的form数据
  20. 洛谷P1438 无聊的数列 [zkw线段树]

热门文章

  1. 过早的给方法中 引用对象 设为 null 可被 GC提前回收吗?
  2. vmware 安装的虚拟机没有网络
  3. 性能测试:tcpcopy
  4. 以圆类 Circle 为基础设计球类 Sphere
  5. TKE qGPU 通过 CRD 管理集群 GPU 卡资源
  6. Python Beautiful Soup库
  7. c++ 树状数组
  8. Eclipse for C/C++ 开发环境部署保姆级教程
  9. 国外卡组织的 交换费-interchangefee(发卡行服务费) 和 银联对比
  10. ShardingSphere-proxy-5.0.0部署之分表实现(一)