zoukankan      html  css  js  c++  java
  • 对函数的推广

    现在,计算机领域里有很多各种各样的语言,比如汇编语言、高级语言、命令式语言、函数式语言、逻辑式语言、静态语言、动态语言、脚本语言等等等,这些语言花样繁多,各有各的不同,但是函数是它们共有的,而且函数的重要性就要细胞之对于世界所有的生物一样。

    从古至今的函数,它们都长的是同一个样子,都是函数名加参数,这应该是从数学里学习过来的。

     

    如果要对现在的函数改造一下会怎么样?肯定会引起程序巨大的改变。

     

    现在的函数局限在于,它的函数名只有一个字符串,所有的意思都要挤在这一个短短的字符串里,比如move(a),GetByNode(a,b,c)...

     

    现在我们把函数的定义改这样,函数是带有若干个参数的一个语句。

     

    下面举两个例子。

    (1)三元运算符"?:"的作用不小我们经常用,现在我们可以把它从语言里踢除,改用一个推广的函数If(a) Get (b) Else Get(c),这样更容易理解。

     

    (2)比如要定义一个函数,足球football以速度speed、角度angle、起点start移动到终点end,一般我们是这样定义的

    void move(Football football,int speed,int angle,Point start,Point end)

    ,我们用推广的函数就可以很好的定义

    (Football football)以速度(int speed)角度(angle)(Point start)移动到(Point end),

    使用时

    (f)以速度(s)角度(a)(start)移动到(end)

    绝对比

    move(f,s,a,start,end)要爽的多。

     

    推广的函数有一个缺点,就是用起来打字比较多,但是它这样更容易理解使用维护,大部分情况下完全可以代替文档注释

     

     

  • 相关阅读:
    Cookie工具类
    验证工具类
    压缩工具类
    一次外企QQ面试
    利用Referer请求头阻止"盗链"
    servlet中ServletConfig的使用
    jquery插件制作
    jQuery选择器总结(转)
    js文件加载执行顺序
    mysql有关问题之:the security settings could not be applied to
  • 原文地址:https://www.cnblogs.com/haiconc/p/2524105.html
Copyright © 2011-2022 走看看