带var参数的函数,在两个文件间的问题,急。。。

forverlove 2007-04-06 11:43:50
procedure swap(var i,j:pointer);
begin
i:= j;
end;
var i,j:System.pointer;
begin
{ TODO -oUser -cConsole Main : Insert code here }

Swap(i,j);

readln;
end.

大家帮我看下,像这样没有问题,

但是如果把swap 函数分另一个文件中就会有问题

[Pascal Error] Project1.dpr(13): E2008 Incompatible types
...全文
142 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
forverlove 2007-04-07
  • 打赏
  • 举报
回复
解决了。。结帖啦。。
forverlove 2007-04-07
  • 打赏
  • 举报
回复
LS这些我都保证没有问题.
也不是swap跟库里函数重名的问题,因为就算我换了函数名也是一样的后果,
类的声明是在interface中
asj 2007-04-07
  • 打赏
  • 举报
回复
按你上一个问题解决的办法看,好像是函数名称swap和库里的函数重名了。所以表现出来的是参数不一致,实质是在另一个文件中无法访问到这个函数。
对于类中方法的访问,首先要保证函数声明为public,而且类的声明部分应该在interface中
forverlove 2007-04-07
  • 打赏
  • 举报
回复
晕,这个问题解决但我的具体问题还没完。。
上次的解决:
就是在另一个文件的interface部份加上procedure swap(var i,j:pointer);即可。

现在问题:
如是是一个类中有此var参数,又怎么办??
forverlove 2007-04-07
  • 打赏
  • 举报
回复
呵呵。自行解决了。。

16,748

社区成员

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

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