文档章节

理解 Delphi 的类(十) - 深入方法[27] - 递归函数: 简单示例

涂孟超
 涂孟超
发布于 2014/09/26 15:36
字数 111
阅读 9
收藏 0
点赞 0
评论 0
//所谓递归函数, 就是自己调用自己的函数, 先来个简单的例子:

{递归调用的简单示例}
procedure alert(i: Integer = 1);
begin
  ShowMessage(IntToStr(i)); {这是方法的功能}
  Inc(i);

  if i<10 then
    alert(i);               {这是方法自调用}
end;


{测试}
procedure TForm1.Button1Click(Sender: TObject);
begin
  alert; {会连续弹出 9 个对话框, 分别提示 1..9}
end;

 
 
 
 
 

 

 

  

本文转载自:http://www.cnblogs.com/del/archive/2008/01/15/1039514.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2004
码字总数 14107
作品 0
深圳
程序员
php递归算法

递归函数是我们常用到的一类函数,最基本的特点是函数自身调用自身,但必须在调用自身前有条件判断,否则无限无限调用下去。实现递归函数可以采取什么方式呢?本文列出了三种基本方式。理解其...

微雨初晴 ⋅ 2016/11/26 ⋅ 0

深入理解Scala-编码规范

本文将讨论Scala中的一些编码规范,它们有助于减少编译和运行时的错误。 避免直接借用其他语言的编码规范 的确,有一些编码规范是在各种语言通用的,比如良好的注释。但Scala与我们经常碰到的...

开源中国驻成都办事处 ⋅ 2014/04/11 ⋅ 0

Python修饰器的函数式编程

本文转载自酷壳http://coolshell.cn/articles/11265.html Python的修饰器的英文名叫Decorator,当你看到这个英文名的时候,你可能会把其跟Design Pattern里的Decorator搞混了,其实这是完全不...

guzhoujiexing ⋅ 2014/05/01 ⋅ 0

可视化Keras深度学习神经网络模型

为了使开发者更好的理解其开发的神经网络模型,Keras Python深度学习库提供了可视化神经网络模型的工具。这对于产品演示和讲解是非常有用的 在本文,你会学到如何在Keras中总结和可视化深度学...

【方向】 ⋅ 2017/12/13 ⋅ 0

【转】Java百问

程序员经常可以通过搜索或者记忆来完成代码,但是许多时候并不真正理解为什么那样写。也就是说,有一定经验的程序员不会犯一些低级的语法错误,但是因为不深入理解有可能造成一些高级错误,比...

一只死笨死笨的猪 ⋅ 2014/09/30 ⋅ 0

Delphi组件开发教程指南(2)简单扩充TEdit

上一篇,介绍了组件开发的一般概述,以及组件类层次结构的各个类的大致信息!现在就开始通过实例进行来简单的讲述一下一般组件的开发过程!我这里先采用最基本的方式来创建一个组件!也就是使...

技术小美 ⋅ 2017/11/12 ⋅ 0

Delphi 中的 procedure of object

Delphi 中的 procedure of object 其实要了解这些东西,适当的学些反汇编,WINDOWS内存管理机制,PE结构,看下李维的VCL架构剖析可以很好理解 type TMyEvent = procedure of object; 这是一种...

vga ⋅ 2014/05/28 ⋅ 0

【C++11 并发编程教程 - Part 3 : 锁的进阶与条件变量(bill译)】

C++11 并发编程教程 - Part 3 : 锁的进阶与条件变量 注:文中凡遇通用的术语及行话,均不予以翻译。译文有不当之处还望悉心指正。 原文:C++11 Concurrency Tutorial – Part 3: Advanced l...

技术小胖子 ⋅ 2017/11/02 ⋅ 0

给 JavaScript 开发者讲讲函数式编程

和大多数人一样,我在几个月前听到了很多关于函数式编程的东西,不过并没有更深入的了解。于我而言,可能只是一个流行词罢了。从那时起,我开始更深地了解函数式编程并且我觉得应该为那些总能...

oschina ⋅ 2016/04/30 ⋅ 9

GO 语言 UI 组件库 - govcl

由于现有第三方的Go UI库不是太大就是用的不习惯,或者组件太少。就萌生了自己写一个UI库的想法Delphi(Lazarus)有些许多优秀的VCL(LCL)组件,不拿来使用太可惜了。所以就索性做了一套。目前支...

不在乎y ⋅ 2017/10/10 ⋅ 17

没有更多内容

加载失败,请刷新页面

加载更多

下一页

DevOps 资讯 | PostgreSQL 的时代到来了吗 ?

PostgreSQL是对象-关系型数据库,BSD 许可证。拼读为"post-gress-Q-L"。 作者: Tony Baer 原文: Has the time finally come for PostgreSQL?(有删节) 近30年来 PostgreSQL 无疑是您从未听...

RiboseYim ⋅ 9分钟前 ⋅ 0

Cube、Cuboid 和 Cube Segment

1.Cube (或Data Cube),即数据立方体,是一种常用于数据分析与索引的技术;它可以对原始数据建立多维度索引。通过 Cube 对数据进行分析,可以大大加快数据的查询效率 2.Cuboid 在 Kylin 中特...

无精疯 ⋅ 48分钟前 ⋅ 0

github太慢

1:用浏览器访问 IPAddress.com or http://tool.chinaz.com 使用 IP Lookup 工具获得github.com和github.global.ssl.fastly.net域名的ip地址 2:/etc/hosts文件中添加如下格式(IP最好自己查一...

whoisliang ⋅ 49分钟前 ⋅ 0

非阻塞同步之 CAS

为解决线程安全问题,互斥同步相当于以时间换空间。多线程情况下,只有一个线程可以访问同步代码。这种同步也叫阻塞同步(Blocking Synchronization). 这种同步属于一种悲观并发策略。认为只...

长安一梦 ⋅ 今天 ⋅ 0

云计算的选择悖论如何对待?

人们都希望在工作和生活中有所选择。但心理学家的调查研究表明,在多种选项中进行选择并不一定会使人们更快乐,甚至不会产生更好的决策。心理学家Barry Schwartz称之为“选择悖论”。云计算为...

linux-tao ⋅ 今天 ⋅ 0

Redis 注册为 Windows 服务

Redis 注册为 Windows 服务 redis 注册为 windows 服务相关命令 注册服务 redis-server.exe –service-install redis.windows.conf 删除服务 redis-server –service-uninstall 启动服务 re......

Os_yxguang ⋅ 今天 ⋅ 0

世界那么大,语言那么多,为什么选择Micropython,它的优势在哪?

最近国内MicroPython风靡程序界,是什么原因导致它这么火呢?是因为他功能强大,遵循Mit协议开源么? 错!因为使用它真的是太舒服了!!! Micropython的由来,这得益于Damien George这位伟大...

bodasisiter ⋅ 今天 ⋅ 0

docker 清理总结

杀死所有正在运行的容器 docker kill $(docker ps -a -q) 删除所有已经停止的容器(docker rm没有加-f参数,运行中的容器不会删掉) docker rm $(docker ps -a -q) 删除所有未打 dangling 标...

vvx1024 ⋅ 今天 ⋅ 0

关于学习

以前学车的时候,教练说了这样的一句话:如果一个人坐在车上一直学,一直学,反而不如大家轮流着学。因为一个人一直学,就没有给自己留空间来反思和改进。而轮流着学的时候大家下来之后思考上...

mskk ⋅ 今天 ⋅ 0

压缩工具之gzip-bzip2-xz

win下常见压缩工具:rar zip 7z linux下常见压缩工具:zip gz bz2 xz tar.gz tar.bz2 tar.xz gzip 不支持目录压缩 gzip 1.txt #压缩。执行后1.txt消失,生成1.txt.gz压缩文件 gzip -d 1.txt....

ZHENG-JY ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部