请问指针如何作为参数传递?50分相赠! procedure Add(Node : ^TCheckNode);TCheckNode是我声明的一个类。每次编译都说'^'符号无法识别。请问指针参数怎样调用?或许不能调用? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 PTCheckNode = ^TCheckNode;procedure Add(Node : PTCheckNode); PTCheckNode=^TCheckNode;procedure Add(Node : PTCheckNode); TCheckNode是我声明的一个类類的話 不需要用指針了 直接傳就是 因為delphi中類的對象傳遞就是傳 引用的(類似與傳指針)如果是 自定義結構體 是需要傳 其指針的。。 如楼上所说,直接用procedure Add(Node : TCheckNode);就可以了。 谢谢诸位大哥,再问一个问题,指针之间是怎样赋值的。比如:temp1 : ^TCheckNode; temp2 : ^TCheckNode; temp1:=temp2;为什么报错?说类型不匹配。 這事delphi的一個小問題你需要這樣type PTCheckNode = ^TCheckNode;temp1: PTCheckNode;temp2: PTCheckNode;temp1 := temp2; // oktemp1^ := temp2^;temp1 : ^TCheckNode; temp2 : ^TCheckNode;這樣 delphi認為它們是不同的類型,雖然 它們都是 ^TCheckNode....但如果你用 type這樣明確說明的話 就OK 如果是一个实类对象,比如 TStringList,传递给其它过程使用时,实际上传递的就是指针.procedure addstring(strList: Tstringslist, str: string);begin strList.add(str);end;procedure addstring(var strList: Tstringslist, str: string);begin if strList = nil then strList:= TStringList.create; strList.add(str);end; 呵呵..很多C++的思维惯性 在 Delphi上行不能了 beyondtkl(大龙驹<干掉小日本>) 说得对,不需要用指针,delphi是传引用,你用指针反而无谓增加了一次计算。 Ofs(Ptr^)是什么意思 新手:筛选特定记录SQL的写法? 100分求TWebBrowser模拟刷新网页 提问,运行期加载函数 怎样忽略这个系统级错误? 一个0和1问题! 谁能解决这个问题,我将‘以身向许’!!! !!!!!!!!!求《Delphi 5.X ADO_MTS_COM+高级程序设计篇》电子书完整下载!!! 明天第一个答辩,送分! 价格分解输出问题 SpreadSheet如何实现类似Excell的冻结窗格的功能(即:固定行跟列...) 请教一个ListView的问题。
procedure Add(Node : PTCheckNode);
如果是 自定義結構體 是需要傳 其指針的。。
比如:temp1 : ^TCheckNode;
temp2 : ^TCheckNode;
temp1:=temp2;为什么报错?说类型不匹配。
PTCheckNode = ^TCheckNode;temp1: PTCheckNode;
temp2: PTCheckNode;temp1 := temp2; // ok
temp1^ := temp2^;
temp1 : ^TCheckNode;
temp2 : ^TCheckNode;
這樣 delphi認為它們是不同的類型,雖然 它們都是 ^TCheckNode....但如果你用 type這樣明確說明的話 就OK
begin
strList.add(str);
end;procedure addstring(var strList: Tstringslist, str: string);
begin
if strList = nil then strList:= TStringList.create;
strList.add(str);
end;