前面介绍了两种方法,都需要在扩展库中导入基库。但如果我们要扩展的是内核库,这一步当然就可以省略,因为内核库是IDE自动导入的,不需要我们操心。下面以扩展table库做一个实例,我们为table库增加一个函数,功能是选出数组中数值最大的元素的索引。

扩展库代码如下:

//扩展table库
namespace tableEX{}
namespace table;maxindex=function(tab){return reduce(tab,function(prev,next,index,arr){                return next>arr[prev]?index:prev;                },1)}

将上述代码保存为aardio\lib\tableEX.aardio。

调用代码如下:

import console; import tableEX;
tab={1,3,5,2,4,6,7,9,8,0};
var i=table.maxindex(tab);
console.log ("最大元素的索引是:"++i);
console.log ("最大元素的值是:"++tab[i]);console.pause(true);

调用效果如下:

aardio名字空间库的扩展方法(五)实例相关推荐

  1. aardio名字空间库的扩展方法(一)

    aardio是一款高效的win桌面编程语言,有丰富的类库.名字空间库可供调用.但是在实际开发中,我们仍然免不了对现有的库进行扩展,以适合自己的开发需求.(注意,是扩展,而不是直接修改现有的库,否则ID ...

  2. aardio名字空间库的扩展方法(四)

    前面三篇讲的是同一种扩展方法,比照类库,我们可以称之为直接继承的扩展方法.本人推荐这种方法,简单,好理解.其实,名字空间库也有"间接继承"的扩展方法,也就是利用元表继承,在此展示一 ...

  3. aardio名字空间库的扩展方法(三)

    通过前面的操作,我们实现了只要导入spaceB这个扩展库,就可以使用spaceA这个基库的内容,还可以使用我们自己新扩展出来的功能,目标达成.这里面有几个问题需要解释: 一.我们继承基库,采用的是在扩 ...

  4. aardio名字空间库的扩展方法(二)

    接前文. 既然要扩展spaceA库,就需要建立一个新库,并且把spaceA库的成员纳入到新库中,然后再考虑增加一些功能. import test.spaceA;//导入基库 //这样基库的内容就包含在 ...

  5. 我的KT库之-----扩展方法

    了解或者认识KT: http://www.cnblogs.com/kingthy/archive/2011/08/08/2130973.html 在项目中如何使用KT? KT是一个库,所以将KT的dl ...

  6. 【错误记录】Groovy 扩展方法调用报错 ( 静态扩展方法 或 实例扩展方法 需要分别配置 | 没有配置调用会报错 groovy.lang.MissingMethodException )

    文章目录 一.报错信息 二.解决方案 一.报错信息 定义 Thread 扩展方法 , 下面的扩展方法 class ThreadExt {public static Thread hello(Threa ...

  7. C#中的扩展方法,Linq,IO和多线程的定义和实例

    前段时间学C#的上转型,泛型,lambda表达式这些应用的理解很费劲.学过之后我多多的练习了几天,接下来继续复习C#的其他一些概念,说实在的这些知识点学过之后很容易忘,但是都是很重要的,所以发表在博客 ...

  8. c# 扩展方法奇思妙用高级篇五:ToString(string format) 扩展

    在.Net中,System.Object.ToString()是用得最多的方法之一,ToString()方法在Object类中被定义为virtual,Object类给了它一个默认实现: 1     p ...

  9. 【转】五、谈扩展方法的理解

    [转]五.谈扩展方法的理解 为什么要用扩展方法 在说什么是扩展方法之前我们先来说说为什么要用扩展方法. 首先我们定义一个 Person 类: public class Person {/// < ...

最新文章

  1. 豆瓣评分 9.0,超 10 万开发者的入门选择,这本经典好书终于升级啦!
  2. S210-设置通过X130-Profinet口进行配置
  3. ADO,OLEDB,ODBC,DAO的区别
  4. HashMap Hashtable区别
  5. gpt 语言模型_您可以使用语言模型构建的事物的列表-不仅仅是GPT-3
  6. mysql 插入加锁_MySQL的死锁系列- 锁的类型以及加锁原理
  7. 深入解析Java中的装箱和拆箱
  8. 基于腾讯视频影视作品数据分析
  9. java编译jni错误_JNI开发的常见错误
  10. 机器学习与深度学习常见面试题
  11. 06正交实验法及场景法
  12. c语言输入1显示你好,你好,求指教!该怎么用C语言的scanf实现一次输入若干个数据...
  13. 【自动化办公】用python实现和女神聊天情话对白,聊天机器人
  14. 叠积木(加权并查集)
  15. On-premise是什么意思?
  16. UWB定位的3种算法:TWR、TOA和TDOA算法
  17. chatgpt接入微信
  18. cad打印老显示rpc服务器不可用,win7打印机提示rpc服务器不可用怎么办-解决win7打印机提示rpc服务器不可用的方法 - 河东软件园...
  19. ccs读取dat文件c语言程序,详解CCS中的.dat文件
  20. vue3 状态管理工具 pinia 使用

热门文章

  1. .买一件上衣45元,买一件裤子90元,如果成套买的话,一套120.假设我买了m个上衣和n个裤子,问需要花多少钱?
  2. 国内外有哪些数据分析相关的竞赛比赛网站?
  3. 十大物联网名词,专业人士才懂全!
  4. 具有外内学习和单色瓶颈的图像修复——两阶段渐进式图像修复示例【CVPR 2021】
  5. Spring框架概述
  6. 2012浙大计算机考研分数线,2012浙江大学考研分数线
  7. Linux上面开发android手机驱动加载.
  8. 【因果推断的统计方法】潜在结果模型
  9. 响应式编程之网络新约:RSocket
  10. python发送json参数