主题:interface 是什么意思啊??
yfwjc
[专家分:150] 发布于 2005-04-29 18:23:00
http://www.programfan.com/club/showbbs.asp?id=73496
忙里偷闲?(mltx?)先生改的interface起什么用啊?
请大侠们和mltx先生指点!!
谢谢!
回复列表 (共27个回复)
21 楼
zhizi123410 [专家分:0] 发布于 2009-01-19 08:40:00
http://www.abab123.com/bbs/down.asp?html=1129909
22 楼
zhizi123410 [专家分:0] 发布于 2009-01-19 08:40:00
http://www.abab123.com/bbs/down.asp?html=1129909
23 楼
zhizi123410 [专家分:0] 发布于 2009-01-19 08:41:00
http://www.abab123.com/bbs/down.asp?html=1129909
24 楼
poloris.lee [专家分:0] 发布于 2009-02-21 20:34:00
我们工作室由工作经验两年以上的相关it工程师组成,主要涉及商业应用系统开发、工程计算程序、科学研究程序领域
熟练掌握c,c++,j2se,j2ee(jsp,spring,hibernate,struts,ejb),dotnet,delphi,fortran,matlab程序/系统设计(外包)服务.
自我们创立以来就以"诚信为本,满足客户需求"为做事原则,并以严格的项目管理和良好的服务为基础己顺利完成多个程序设计(软件外包)服务.
如有需求,请联系QQ:442658449 非诚勿扰~
25 楼
rhf336 [专家分:0] 发布于 2009-03-22 23:29:00
学习了,谢谢!
我是初学者,请问哑元是什么意思啊?
26 楼
chengw1976 [专家分:130] 发布于 2009-04-30 10:43:00
关于兄台提到的第二点,彭的书上说用module可以替代interface,只是没有举例。谁能给举个例子。比如用module改写彭的例子 EX0826。谢谢。
[quote]看了大家的讨论,我想补充几句:首先要说明的是Interface是个好东西!
Interface的功能远不限于对外部调用函数的说明(因为放在module里的函数就可以不用Interface),其更大用处是函数的重载(比如可以定义一些张量的运算,不借助於Interface是不行的);Interface的另外一个重要的性质是实现Fortran面向对象编程中的多态性,这样很多子程序就可以用一个名称,子程序的反回值可以根据输入子程序参数的不同而不同,这样就很方便了。
[/quote]
27 楼
shmech [专家分:120] 发布于 2009-12-13 13:32:00
其他程序引用module中包含的子程序、子函数应该和引用module中定义的变量没什么区别。所以这样可以不用在引用的程序中声明子程序、子函数。但interface的功能远不只这点。一些情况下还是必须使用interface的,Fortran 90 Handbook中指出了10种必须使用interface的情况。比如传递数组。
当然不必每次调用一个外部子程序/函数的时候都在主引程序中声明该子过程的interface,那样太麻烦且容易出错。可以把所有的interface写在一个module里,在主引程序中use module就可以了。
楼上中华韧峰认为interface使Fortran得语法越来越不清晰,我认为正相反,interface的出现提高了Fortran的封装性,更容易实现模块化。
大学的时候教c的老师对面对对象编程的大行其道愤愤不已,认为这降低了程序设计的门槛,原来受过专业训练的人做的事现在只要读点攻略之类就可以完成,必然带来程序质量的下降。现在个人感觉到,面向对象编程应该不可能成为Fortran的主流,那将是一场灾难。
另外,lz的程序中使用了递归,Fortran对递归的支持不够好,似乎会降低程序的执行效率?
[quote]关于兄台提到的第二点,彭的书上说用module可以替代interface,只是没有举例。谁能给举个例子。比如用module改写彭的例子 EX0826。谢谢。
[quote]看了大家的讨论,我想补充几句:首先要说明的是Interface是个好东西!
Interface的功能远不限于对外部调用函数的说明(因为放在module里的函数就可以不用Interface),其更大用处是函数的重载(比如可以定义一些张量的运算,不借助於Interface是不行的);Interface的另外一个重要的性质是实现Fortran面向对象编程中的多态性,这样很多子程序就可以用一个名称,子程序的反回值可以根据输入子程序参数的不同而不同,这样就很方便了。
[/quote]
[/quote]
我来回复