为什么 Python 不支持函数重载?
来源:互联网 发布:广联达装修预算软件 编辑:程序博客网 时间:2024/06/05 19:13
为了考虑为什么 python 不提供函数重载,首先我们要研究为什么需要提供函数重载。
函数重载主要是为了解决两个问题。
1。可变参数类型。
2。可变参数个数。
另外,一个基本的设计原则是,仅仅当两个函数除了参数类型和参数个数不同以外,其功能是完全相同的,此时才使用函数重载,如果两个函数的功能其实不同,那么不应当使用重载,而应当使用一个名字不同的函数。
好吧,那么对于情况 1 ,函数功能相同,但是参数类型不同,python 如何处理?答案是根本不需要处理,因为 python 可以接受任何类型的参数,如果函数的功能相同,那么不同的参数类型在 python 中很可能是相同的代码,没有必要做成两个不同函数。
那么对于情况 2 ,函数功能相同,但参数个数不同,python 如何处理?大家知道,答案就是缺省参数。对那些缺少的参数设定为缺省参数即可解决问题。因为你假设函数功能相同,那么那些缺少的参数终归是需要用的。
鉴于情况 1 跟 情况 2 都有了解决方案,python 自然就不需要函数重载了。阅读全文
0 0
- 为什么 Python 不支持函数重载?
- 为什么 Python 不支持函数重载?
- ActionScript 3.0 为什么不支持函数重载
- python 为什么Python不需要函数重载
- JavaScript不支持函数重载
- javascript不支持函数重载
- js不支持函数重载
- webService不支持函数重载?
- js不支持函数重载
- python为什么不支持自增操作符
- 为什么C++支持函数重载
- 为什么C++有函数重载
- 为什么C++可以重载函数
- 为什么java函数不支持参数默认值?
- python 函数重载
- Python实现函数重载
- python 函数重载
- Python的函数重载
- Ubuntu使用apt-get安装Apache2报错时的解决方案
- java分页详解
- QListWidget中项的灰显设置
- 【grunt】两小时入门
- 函数传值的三种方法
- 为什么 Python 不支持函数重载?
- 一条相关子查询的SQL优化
- Java ClassPath环境变量详解
- SSM中静态资源配置
- String、StringBuffer与StringBulider之间的区别
- 9.12
- 《Windows核心编程》の托盘程序的编写(CSystemTray类)
- Tensorflow中计算图机制和常用函数笔记
- 各种依赖