函数和过程声明的位置问题 在单元文件(与窗体有关)中声明函数和过程时,既可在接口Interface部分的Private段和Public段声明,又可在实现Implementation部分声明,请问在这三个位置声明有何差异? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Interface部分的Private段和Public段声明为类的专有成员,在外单元作用时需要使用限定符 在接口Interface部分:函数在本单元全局可见,如果其他单元Use这个单元的话,函数也可见,Private段和Public段声明只是类的封装,如果申明在类中,那么就是方法,可见性是一样的,除了调用时要加上类名。Implementation部分声明:函数只在在本单元全局可见,其他单元不可见。 如tsst 所说的,Interface部分的Private段和Public段声明为类的专有成员在其他单元里调用时要这样:在unit1里声明的函数function aa:integer;在unit2里调用的方法首先在unit2里引用unit1,然后var bb:integer;...unit2.bb:=unit1.form1.aa;...而在Implementation部分声明的函数可以直接使用,但也得引用该单元如,在unit2里bb:=unit1.aa; interface:其他单元都可以调用该变量;Implementation:本单元的全局变量;Private和Public:类的私有成员共有成员,和前面两种情况是不一样的,他们都放在堆里。 juliens(星星球愛思纯^_^) 已经回答完了:在接口Interface部分:函数在本单元全局可见,如果其他单元Use这个单元的话,函数也可见,Private段和Public段声明只是类的封装,如果申明在类中,那么就是方法,可见性是一样的,除了调用时要加上类名。Implementation部分声明:函数只在在本单元全局可见,其他单元不可见。 谢谢各位热心人的帮助,由于分数有限,所以只送给田Sir和juliens(星星球愛思纯^_^)两位. 关于创建线程的问题 如何截获另一个程序关闭的消息啊? 求数独游戏高手帮忙 请报价 谁解决这个问题,给足够分,不够再开帖给分! 网络编程--知道一Internet IP地址,想通过编程得到他的域名!!大家帮帮忙! 关于ping的问题 如何精确到微秒(毫秒也可)??? 求救!!! 请问大家谁有用delphi编写的工作日志程序的源码?我有急用,谢谢 我不喜欢数据库编程,学点什么号呢? sql server 数据库安装问题 哪位大虾能提供一下Tapdcomport控件的下载啊,感谢了!
Implementation部分声明:函数只在在本单元全局可见,其他单元不可见。
在其他单元里调用时要这样:在unit1里声明的函数function aa:integer;在unit2里调用的方法
首先在unit2里引用unit1,然后
var bb:integer;
...
unit2.bb:=unit1.form1.aa;
...而在Implementation部分声明的函数可以直接使用,但也得引用该单元
如,在unit2里
bb:=unit1.aa;
Implementation:本单元的全局变量;
Private和Public:类的私有成员共有成员,和前面两种情况是不一样的,他们都放在堆里。
在接口Interface部分:函数在本单元全局可见,如果其他单元Use这个单元的话,函数也可见,Private段和Public段声明只是类的封装,如果申明在类中,那么就是方法,可见性是一样的,除了调用时要加上类名。
Implementation部分声明:函数只在在本单元全局可见,其他单元不可见。