Delphi拾遗(7) 参数与返回值
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm2 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
//返回值问题
function Add(x, y: Integer): Integer;
function Add_Res(x, y: Integer): Integer;
//关于函数的参数问题
//参数可以分为: 默认参数(传值)、var(传址)、out(输出)、const(常数)四类
function MyFun1(Value: Integer): Integer;
function MyFun2(var Value: Integer): Integer;
function MyFun3(out Value: Integer): Integer;
function MyFun4(const Value: Integer): Integer;
end;
var
Form2: TForm2;
implementation
{$R *.dfm}
{ TForm2 }
function TForm2.Add(x, y: Integer): Integer;
begin
Add := x + y; //使用函数名作为返回存储变量 (少用)
// Add := Add + 1; // 函数名作为返回存储变量 不能进行运算操作
end;
function TForm2.Add_Res(x, y: Integer): Integer;
begin
Result := x + y;
Result := Result + 1;
end;
procedure TForm2.Button1Click(Sender: TObject);
begin
ShowMessage(IntToStr(Add(2, 4))); // 6
ShowMessage(IntToStr(Add_Res(2, 4))); // 7
end;
{默认参数是传值, 会被改变}
function TForm2.MyFun1(Value: Integer): Integer;
begin
Inc(Value);
Result := Value;
end;
{var参数是传址, 会被改变}
function TForm2.MyFun2(var Value: Integer): Integer;
begin
Inc(Value);
Result := Value;
end;
{out参数是为支持Com的, 和 var 的结果是一样的, 一般我们用不着它}
function TForm2.MyFun3(out Value: Integer): Integer;
begin
Inc(Value);
Result := Value;
end;
{const参数是绝对不可以赋值的, 这是被编译器优化的方式, 尽量多用}
function TForm2.MyFun4(const Value: Integer): Integer;
begin
// Inc(Value); 常量值不能被改变,强行改变会报错
Result := Value;
end;
procedure TForm2.Button2Click(Sender: TObject);
var
a: Integer;
相关文档:
community.csdn.net/Expert/topic/3423/3423580.xml?temp=.7675897
主 题: 怎样用DELPHI接收摄像头的图象
作 者: benbenpear (笨笨)
等 级:
信 誉 值: 100
所属社区: Delphi GAME,图形处理/多媒体
问题点数: 0 ......
名称 类型 说明
--------------------------------------------------------- ......
delphi + java 的分布式应用思考
用delphi做界面层 java业务逻辑层 这样看上去很美吧?
具体的实现
java 做业务逻辑层 应该有多种选择 企业级的有EJB3, 轻量级的有spring
目前在学习ejb3,感觉用来做业务逻辑层真的很不错。spring还没有了解
界面层用delphi,RAD应该是delphi的优势。
关键的问题的如果把 ......
枚举类型
Pascal程序不仅用于数值处理,还更广泛地用于处理非数值的数据。例如,性别、月份、星期几、颜色、单位名、学历、职业等。
1、枚举类型的定义
格式: type 枚举类型标识符=(标识符1,标识符2,…,标识符n)
2、枚举类型数据特点
① 枚举元素只能是标识符;
例如,下列类型定义是合法的:
......
在Delphi里实现MD5加密其实很容易!方法如下:
在Uses单元中引用 IdHashMessageDigest,IdGlobal, IdHash 单元,再写如下代码
即可以达到MD5的实现。
示例代码
procedure
TForm
1.Button1Click(Sender: TObject);
var
MyMD5: TIdHashMessageDigest5;
Digest: T4x4LongWordRecord;
begin
MyMD5 := T ......