要写一个累加函数.
但未知函数的参数个数(全是int型).
请问怎样实现的?为方便大家理解.
附VB中实现方法.Dim x As Variant
Dim y As Integer
Dim intsum As Integer
Sub sum(ParamArray intnums())
Dim y As Integer
y = 0
For Each x In intnums
y = y + x
Next x
intsum = y
End SubPrivate Sub Command1_Click()
sum 1, 2, 3, 4
Print intsum
End Sub
但未知函数的参数个数(全是int型).
请问怎样实现的?为方便大家理解.
附VB中实现方法.Dim x As Variant
Dim y As Integer
Dim intsum As Integer
Sub sum(ParamArray intnums())
Dim y As Integer
y = 0
For Each x In intnums
y = y + x
Next x
intsum = y
End SubPrivate Sub Command1_Click()
sum 1, 2, 3, 4
Print intsum
End Sub
解决方案 »
- 关于pascal的一段99乘法表的写法~
- 请教,如何对比两个memo中的内容
- 如何设置导出到Excel的数据的数据类型?? 急!!!!
- 怎样修改StringGrid控件源码来提高读取数据库数据的速度??
- 现想往MSSQLSERVER2000数据库MYDATA 的数据表 CUSTOMER 写入字段EMAIL......
- ~_~我晕看了整整3个小时就没有解决QR分组分栏的打印问题!!!!!!!!!!!求救120啊送100^_^
- 怎样用文本框输入日期格式?
- 有关数据库.
- fortran写的生成二进制文件,怎么改成delphi的?请大家看看,帮帮忙!
- 如何在一次插入多条记录
- 打包程序
- 通过DELPHI把两个关联表的数据导出到文本文件里去,想了一天,晕呀??
procedure TScoreTestTests.AddPlayerScore(const APlayerScore : VARIANT);
var
SQL: String;
begin
SQL := 'insert into tb_score (s_sport, s_order, s_player, s_item, s_level, s_consult, s_text)'
+ 'values(''' + APlayerScore[0] + ''', ''' + APlayerScore[1] + ''','''
+ APlayerScore[2] + ''',''' + APlayerScore[3] + ''',''' + APlayerScore[4]
+ ''',''' + APlayerScore[5] + ''',''' + APlayerScore[6] +''')';
try
SQLUpdate(SQL);
except
{$ifdef _DEBUG}
on EDatabaseError do
raise EDatabaseError.Create('睰Θ罿魁魁狡Θ罿魁!');
{$endif}
on EDBEngineError do
raise EAbort.Create('计沮畐硈钡岿粇!');
end;
end;
"不定参数" 的函数的调用
procedure TScoreTestTests.AddPlayerScoreTest;
var
i: Integer;
v: VARIANT;
begin
v := VarArrayCreate([0,0], varVariant);
for i := 1 to 8 do
begin
v[0] := VarArrayOf(['01.01', '01.02', '01.'+ FormatFloat('00',i + 32), '01', '蔼舱','', '']);
AddPlayerScore(v[0]);
end;
end;
var
i: Integer;
begin
result := 0;
for i := Low(a) to High(a) do
result := result + a[i];
end;procedure TForm1.Button2Click(Sender: TObject);
begin
ShowMessage(IntToStr(GetSum([1, 2, 3, 4, 5, 6])));
end;