所有分数求助,在调用的子过程里改变传递过去的动态数组的长度,为什么不可以呢?

echoxh 2005-07-07 10:26:31
procedure ChangeArray(Var ChangedArray:Array of String);
var j:integer;
begin
for j:=0 to 3 do begin
SetLength(ChangedArray,j+1);//这一行有问题,可是我必须要在子过程里改变这个数组的长度,有别的办法解决吗?编译错误提示:incompatible types
ChangedArray[j] := IntToStr(j);
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var TestArray:array of String;
i:integer;
begin
SetLength(TestArray,0);
ChangeArray(TestArray);
for i:= 0 to Length(TestArray)-1 do begin
Showmessage(TestArray[i]);
end;

end;
...全文
107 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
echoxh 2005-07-07
  • 打赏
  • 举报
回复
是啊,小河同学,呵呵,不好意思,只有这么多分数了,我的得分怎么看不到呢,你知道吗?

另外,其实我是想复用ChangeArray里的代码,里面的代码很长,现在已经解决了,是用的别的方法变通实现的,子过程动态改变数组的长度可能实现不了,我只好在调用之前就定义好了它的长度。

马上结贴,分数给你。

有人来捐给我点分吗?我好可怜啊

另外顺便问一句吧:小河,你知不知道,我想在页面上显示一个类似于Dbgrid的表格,然后通过Delphi改变它的内容,但我不想使用数据库,你知道有办法实现吗?我看到有一个StringGrid,但是感觉好象不太好使一样。
何鲁青 2005-07-07
  • 打赏
  • 举报
回复
PS:
10就是你的所有分数了,老天爷!!!
何鲁青 2005-07-07
  • 打赏
  • 举报
回复
procedure TForm1.Button1Click(Sender: TObject);
var TestArray:array of Char;
i,j:integer;
begin
SetLength(TestArray,0);
for j:=0 to 3 do begin
SetLength(TestArray,j+1);//这一行有问题,可是我必须要在子过程里改变这个数组的长度,有别的办法解决吗?编译错误提示:incompatible types
TestArray[j] := IntToStr(j)[1];
end;
//ChangeArray(TestArray);
for i:= 0 to Length(TestArray)-1 do
begin
Showmessage(TestArray[i]);
end;
end;
///////////////////////////
两个函数写到一块就可以了,动态数组大概不能作为参数,你虽然写的是Var ChangedArray:Array of String但是好像还是被作为静态数组来处理的...
PowerBI系列之Power Query专题1.  获取数据 数据源种类介绍和获取Excel数据源输入数据和拷贝数据:创建辅助表解析Json/XML数据格式获取Web网页数据和URL添加动态参数连接数据的四种模式:Import、DirectQuery、Live Connection、Dual双 属于混合模式连接数据库:Sql server、 Mysql(直连但是必须先安装一个mysql插件)DirectQuery直连查询:Sql serverODBC方式获取数据表关联或多个Sql或调用存储过程获取数据SQL中动态传参和自定义函数: sql中使用参数或数据库名称使用参数连接Sharepoint和OneDrive数据源连接Dataset和Dataflow 替换本地数据源为Sharepoint数据源并保留数据处理操作 终止当前数据刷新Loading:Cancel Query数据源设置-重置数据连接凭证PBIDS连接数据源创建和使用报表模块(输入或值列表)利用报表模板和参数控制线下报表数据权限DirectQuery启用自动页面刷新和更改检测管理聚合表提高DirectQuery查询性能动态M查询参数提高DirectQuery查询性能添加数据刷新时间 DateTime.LocalNow()和Getdate()2.  数据清洗和M语言M语言和官方文档介绍PowerQuery中查阅M函数:=#shared, Ctrl+Space提示数据清洗之常用技能:提升标题、更改数据类型、保留删除错误或空行,删除重复项、选择列和删除列、填充单元格、合并列、拆分、提取、替换、条件替换、添加自定义列,添加条件列、添加索引列、分组、添加年月日列、追加和合并查询透视和逆透视以及转置合并单元格的Excel文件处理导入文件夹中多Excel文件并合并解决多文件合并中列顺序不一致使用参数和函数批量导入文件 文本中提取中文、英文、数字等处理双引号转义 列拆分详解解决列名改变错误解决列丢失错误动态显示、排序和重命名列为所有列名添加前缀列名字母大写和分隔符调整Trim标题列中的多余空格如何处理load数据错误为什么load的Excel数据有null空行为什么load的Excel数据标题在第二行灵活添加占位符规范同类相似数据数据按多列排序为分组添加Index序号分组内值合并诊断工具分析数据处理过程PowerQuery小技巧分享 新冠病例活动轨迹地图标识 

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧