DELPHI 参数前缀的使用
传值参数
传值参数可在过程内部修改,但过程返回时该修改不会反映出来。不
加任何前缀,就表示该参数为传值参数。
Procedure Foo( I : Integer );
I 的值被传递到Foo 过程。当Foo 返回时,在Foo 中对I 的修改不会
反映到I。
传递引用参数
用引用传递参数意味着传递了指向实际数据的一个指针。如果用 var
前缀,即指定用引用传递参数。被调用过程会改变该参数,修改将对实际
数据进行,过程返回时可以看到改变。
Procedure Foo( var I : Integer );
I 作为变量传递。当Foo 返回时,在Foo 中对I 的改变将反映到作为
参数传递到Foo 的实际变量。
传递常量参数
常量参数是不可改变的,即“可以看不能碰”。应尽可能地使用常量
参数,因为常量参数是可信赖的。从调用过程前直到过程返回后,常量参
数的值不会改变。
Procedure Foo( const I : Integer );
在 Foo 中无法改变 I ,结果在过程返回时 I 的值不会有任何变化。
传递只写参数
只写参数以out 关键字为前缀。out 关键字是为了与COM 接口兼容
而引入的。对被调用的过程来说,当参数声明中含有out 关键字时,该参
数的值没有任何特定的意义,而过程应该向该参数赋值。调用者可以预期
在过程返回时,out 参数已含有需要的值。
Procedure Foo( out I : Integer );
传给 Foo 的值将被废弃掉,当过程返回时对I 的改变将反映出来。在
使用引用传递参数这一点上,out 与var 相似。out 前缀是为支持COM而
添加的。
DELPHI 参数前缀的使用的更多相关文章
- Delphi 参数的传递
- delphi编写dll心得, 谢谢原作者的分享。转
delphi编写dll心得 1.每个函数体(包括exports和非exports函数)后面加 'stdcall;', 以编写出通用的dll2.exports函数后面必须加'export;'(放在'st ...
- 深入Delphi下的DLL编程
深入Delphi下的DLL编程 作者:岑心 引 言 相信有些计算机知识的朋友都应该听说过“DLL”.尤其是那些使用过windows操作系统的人,都应该有过多次重装系统的“悲惨”经历——无论再怎样小心, ...
- WebApi 参数请求
收藏来源于:http://www.cnblogs.com/babycool/p/3922738.html 路由配置到id post多个参数 ➕前缀 FromBody 参数为实体 对于一般前台页面发起的 ...
- python之参数解析模块argparse
2.7之后python不再对optparse模块进行扩展,python标准库推荐使用argparse模块对命令行进行解析. 简单入门 先来看个例子: argparse_test.py: import ...
- [Python进阶]001.不定参数
不定参数 介绍 元组参数 字典参数 混合 介绍 不定参数用 * 和 ** 定义 不定参数必须在其他所有参数之后 例子:os.path.join 方法就可以写入不定数量的参数 元组参数 定义:*args ...
- 我也来写:数据库访问类DBHelper
一.前言 相信许多人都百度过:“.net 数据库访问类”.然后就出来一大堆SqlHelper.我也用过这些SqlHelper,也自己写过,一堆静态方法,开始使用起来感觉很不错,它们也确实在很多时候可以 ...
- 视频直播点播nginx-rtmp开发手册中文版
2016年8月18日12:42:35 参照官方文档https://github.com/arut/nginx-rtmp-module/wiki/Directives 请注意这个是粗翻译版,仅供参考,不 ...
- 我也来写:数据库访问类DBHelper(转)
一.前言 相信许多人都百度过:“.net 数据库访问类”.然后就出来一大堆SqlHelper.我也用过这些SqlHelper,也自己写过,一堆静态方法,开始使用起来感觉很不错,它们也确实在很多时候可以 ...
随机推荐
- ACM做题随做随思
程序停止运行:数组开太大: 输入一串单词,可以“string s; while(cin>>s){//代码块}”,因为cin>>s遇到空格会停止: map<key,valu ...
- 点击查看大图Activity
1.使用方式 Intent intent = new Intent(FriendCircleActivity.this, ImageGralleryPagerActivity.class);//0,索 ...
- Uva 12627 Erratic Expansion(递归)
这道题大体意思是利用一种递归规则生成不同的气球,问在某两行之间有多少个红气球. 我拿到这个题,一开始想的是递归求解,但在如何递归求解的思路上我的方法是错误的.在研读了例题上给出的提示后豁然开朗(顺便吐 ...
- C#的internal访问修饰符
文章:C# 访问修饰符internal的访问范围误区释疑 internal访问修饰符限定的类,只能在本程序集中访问.
- PhalApi 1.4.2 经典封存版 - 码云
https://www.phalapi.net/ PhalApi 1.x 是经典封存版本,已停止更新,历练考验,可放心使用. 主要采用PEAR命名规范,遵循PSR-0,不支持命名空间和composer ...
- 玩Vim
1)我一个脚本中粘贴的都是当年在vim下粘的东西,都是带行号的,我现在想把所有的行号都换成回车键,要怎么办呢? %s/[0-9]/^M/g 注:其中回车在vim的输入方法是ctrl+V,会得到^,此时 ...
- request对数据进行编码的 才是导致乱码问题之一
1.此时服务器端接收到客户端提交来的post请求 2.request.getParameter("name")方法开始从请求中解析数据 并使用默认的编码 格式进行编码(ISO-88 ...
- 当xml结构很深时候 可以通过父节点删除子元素
当xml结构很深时候 可以通过父节点删除子元素
- Firefox浏览器浏览自己做的网站需要输入用户名和密码解决
我用最新的Firefox 35.0浏览我制作的网站,就会弹出这个对话框.这是什么原因?
- BZOJ4476 JSOI2015送礼物(分数规划+单调队列)
看到这个式子当然先二分答案.得max-min-(j-i+k)ans>=0. 显然max-min相同的情况下所选区间长度越短越好,所以max和min都应该取在边界.那么实际上我们根本不用管端点是否 ...