文档章节

理解 Delphi 的类(十) - 深入方法[11] - 参数前缀

涂孟超
 涂孟超
发布于 2014/09/26 15:37
字数 230
阅读 1
收藏 0
点赞 0
评论 0
//要点11: 参数可以分为: 默认参数(传值)、var(传址)、out(输出)、const(常数)四类

{默认参数是传值, 不会被改变}
function MyF1(x: Integer): Integer;
begin
  Inc(x);
  Result := x;
end;

{var参数是传址, 会被改变}
function MyF2(var x: Integer): Integer;
begin
  Inc(x);
  Result := x;
end;

{out参数是为支持Com的, 和 var 的结果是一样的, 一般我们用不着它}
function MyF3(out x: Integer): Integer;
begin
  Inc(x);
  Result := x;
end;

{const参数是绝对不可以赋值的, 这是被编译器优化的方式, 尽量多用}
function MyF4(const x: Integer): Integer;
begin
  //Inc(x); {这句会出错, 因为带 const 前缀的参数是不可以更改的}
  Result := x;
end;


//调用测试
procedure TForm1.Button1Click(Sender: TObject);
var
  a: Integer;
begin
  a := 6; MyF1(a);
  ShowMessage(IntToStr(a));  //6

  a := 6; MyF2(a);
  ShowMessage(IntToStr(a));  //7

  a := 6; MyF3(a);
  ShowMessage(IntToStr(a));  //7

  a := 6; MyF4(a);
  ShowMessage(IntToStr(a));  //6
end;

 
 
 
 
 

 

 

  

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

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
Delphi源程序格式书写规范

1 ,规范简介 本规范主要规定Delphi 源程序在书写过程中所应遵循的规则及注意事项。编写该规范的目的是使公司软件开发人员的源代码书写习惯保持一致。这样做可以使每一个组员都可以理解其它组...

长平狐
2012/09/03
182
0
[转] Java中调用Delphi编写的DLL

有些时候,要写一些程序,在 JAVA 里面好难实现, 但如果使用其它编程语言却又比较容易时,我们不妨通过 JNI 来让不同语言的程序共同完成. JNI 的教程, 网上 C 的比较多,Java 也提供了 javah.ex...

鉴客
2010/10/28
2.4K
1
Java中调用Delphi编写的DLL

有些时候,要写一些程序,在 JAVA 里面好难实现, 但如果使用其它编程语言却又比较容易时,我们不妨通过 JNI 来让不同语言的程序共同完成. JNI 的教程, 网上 C 的比较多,Java 也提供了 javah.ex...

geek_loser
2014/09/26
0
0
两句话理解js中的this

this 前言: 一直都搞不清javascript中this的指向,这本书中有3章都是在讲解this,去年第一次看完还是觉得似懂非懂的,一深入的问还是不清楚,现在在看一遍,真心觉得这本书里将的是真好,想深入了解...

funnycoderstar
2017/11/16
0
0
是什么样的步骤,使得你的ios代码变得如此容易阅读?大咖分享

优秀的程序员会用尽可能简单的方式来解释他们的代码,即使是物理学家都可以用一张白纸和一只铅笔来解释虫洞,我们又何尝不可? 我会尽可能让代码写地简单、易读,包括选择合适的变量名、使用...

浪漫程序员
05/22
0
0
Delphi 中的 procedure of object

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

vga
2014/05/28
0
0
解决shopnc调用不一样的表前缀数据表的过程

之所以备注一下,总结一下问题产生,解决的过程,便于以后对于逻辑思维的纠正。 问题产生后,主要是思考如何修改model方法,这就便了,因为shopnc中必须要实例化数据表才行,而实例化数据表必...

ziluopao
2016/06/01
95
1
C#项目代码规范

前言   小菜就是小菜,几个人搞出来的项目,让公司大牛稍微看了下,最后送出了惨不忍睹四个字。命名各种各样,五花八门,大写英文、小写英文、大写拼音、小写拼音、英文和拼音组合、字母和...

aehyok
2013/11/11
0
0
深入理解MySQL 5.7 GTID系列(一)

MySQL GTID特性是5.6加入的一个强大的特性,它的目的在于使用GTID的MySQL能够在整个复制环境中能够自动地切换,而不像以前需要指定文件和位置,这也一定是未来发展的方向,我们熟知的MGR也是...

技术小能手
01/08
0
0
delphi 中几种多线程操作方式

在了解多线程之前我们先了解一下进程和线程的关系 一个程序至少有一个主进程,一个进程至少有一个线程。 为了保证线程的安全性请大家看看下面介绍 Delphi多线程同步的一些处理方案大家可以参考...

moodlxs
2015/01/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

利用 acme.sh 获取网站证书并配置https访问

acme.sh 实现了 acme 协议, 可以从 letsencrypt 生成免费的证书.(https://github.com/Neilpang/acme.sh/wiki/%E8%AF%B4%E6%98%8E) 主要步骤: 安装 acme.sh 生成证书 copy 证书到 nginx/ap...

haoyuehong
13分钟前
0
0
微擎框架内如何根据media_id获取到微信图片的路径

微擎的框架内,图片选择后,获取的是那个字符串是media_id,相当于你这张图片在微信的图片服务器里面的id 要求是:获取https://mmbiz.qpic.cn/mmbiz_jpg/…… 微信图片的路径 而微信并没有根据m...

老bia同学
17分钟前
0
0
Spring boot中日期的json格式化

Model 在model层中,类的日期属性上面添加如下注解: @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd hh:mm:ss") 参考 Jackson Date格式化教程...

亚林瓜子
19分钟前
0
0
Eclipse:Failed to load the JNI shared library

1.问题背景: 由于我之前使用jdk1.9学习,当使用Luke的时候发现jdk版本过高,需要向下配置jdk,就向朋友拷了一个安装包。重新配置路径后,便开始报错。 2.问题描述: Failed to load the JNI...

tinder_boy
21分钟前
0
0
少儿学习编程课程是否真的适合七八岁的低龄儿童[图]

少儿学习编程课程是否真的适合七八岁的低龄儿童[图]: 天下熙熙皆为利来,天下攘攘皆为利往。 这几年来,乐高教育机构在国内如同雨后春笋般出现,当然关闭/转手的也很多。从教师角度来看,部...

原创小博客
27分钟前
0
0
ES12-词项查询

1.词项查询介绍 全文查询将在执行之前分析查询字符串,但词项级别查询将按照存储在倒排索引中的词项进行精确操作。这些查询通常用于数字,日期和枚举等结构化数据,而不是全文本字段。 或者,...

贾峰uk
35分钟前
0
0
http状态码与ajax的状态值

ajax状态值 1.1 200 & OK:状态请求成功

litCabbage
38分钟前
0
0
iOS动画效果合集、飞吧企鹅游戏、换肤方案、画板、文字效果等源码

iOS精选源码 动画知识运用及常见动画效果收集 3D卡片拖拽卡片叠加卡片 iFIERO - FLYING PENGUIN 飞吧企鹅SpriteKit游戏(源码) Swift封装的空数据提醒界面EmptyView 沙盒文件浏览与分享调试控...

sunnyaigd
41分钟前
0
0
AngularJS配置.run()块中设置路由事件的监听器以及过滤未经授权的请求

AngularJS中的run方法初始化全局数据,只对全局作用域起作用,如$rootScope.多个控制器之间可以共享数据,如下代码所示: <script type="text/javascript"> var m1 = angular....

孟飞阳
41分钟前
0
0
Java语言学习(十):输入/输出

Java中,I/O操作代表着输入、输出,Java所有的I/O机制都是基于数据流进行输入输出。java.io类包提供了很多的输入输出处理功能方法,大家可以参考下JDK文档中关于I/O的一些处理方法:JDK在线中...

海岸线的曙光
51分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部