| 查看: 2803 | 回复: 1 | |||
[交流]
Module procedure和external procedure之间有区别吗?
|
|
前段时间我把自己写的子程序都放在了Module里面,然后通过use调用。 但这两天突然发现好像不需要专门弄个Module来放这些子程序,直接当成外部子程序就行了。 这样想想,直接当成外部子程序即少写了些代码又少生成了些中间文件,这样不是更好吗? 所以想问下各位高手有必要把子程序放到module里吗,什么时候有必要? 根据fortran95标准上的说明,在调用Module procedure时其接口是explicit的,而在调用external procedure时其接口是implicit的。对于这个说明我有时理解不过来,体会不深。希望有体会的人来指教下。 |
» 猜你喜欢
读博
已经有5人回复
到新单位后,换了新的研究方向,没有团队,持续积累2区以上论文,能申请到面上吗
已经有13人回复
博士申请都是内定的吗?
已经有6人回复
之前让一硕士生水了7个发明专利,现在这7个获批发明专利的维护费可从哪儿支出哈?
已经有5人回复
博士读完未来一定会好吗
已经有29人回复
投稿精细化工
已经有4人回复
高职单位投计算机相关的北核或SCI四区期刊推荐,求支招!
已经有4人回复
导师想让我从独立一作变成了共一第一
已经有9人回复
心脉受损
已经有5人回复
Springer期刊投稿求助
已经有4人回复
» 抢金币啦!回帖就可以得到:
中国地质大学(武汉)杨明教授组招收2026年博士
+2/402
西班牙巴塞罗那自治大学 招收生物学博士 CSC
+1/89
香港科技大学显示与光电国家重点实验室招收量子点钙钛矿光电液晶光电与显示博士生
+1/88
寻找承接企业/科研机构/高校:启明人才计划(上海及长三角方向)
+1/83
双一流大学湘潭大学“化工过程模拟与强化”国家地方联合工程研究中心招收各类博士生
+1/57
2026年博士招生--北京理工大学交叉学科(航空,力学,能动,计算机等方向)
+1/25
智慧能源中心2026年秋季博士生招生启事
+1/24
智慧能源中心招聘启事|博士后 科研助理
+1/24
哈尔滨工业大学招收博士研究生(欢迎环境、生物、市政、农业、化学等专业)长期有效
+1/16
香港城市大学招聘博士后 (有机合成/催化/流动化学)
+1/13
长春理工大学和西安工业大学主动光电探测成像技术重点实验室招收博士生
+1/12
博士/硕士招生
+1/11
北理工柔性电子国家杰青团队招【科研助理】长期有效
+1/10
澳门大学 应用物理及材料工程研究院 孙国星课题组招收博士(2026/2027学年)
+1/9
澳门科技大学药学院诚招2026年秋季药剂学/生物材料方向博士研究生
+1/8
年底招聘有机合成
+1/7
HBI的合成交流
+1/6
辽宁大学环境工程招收“申请考核”制博士研究生1名(环境工程)(2026年)
+1/6
2026英国女王大学机械学院电池储能CSC全奖博士招聘
+1/2
北京科技大学/李亚庚教授/优青/招收2026年秋季入学博士生1名
+1/1
★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
小木虫: 金币+0.5, 给个红包,谢谢回帖
btx97: 金币+10, 感谢你这么详细的解答。很有帮助,谢谢。 2013-11-22 05:56:48
小木虫: 金币+0.5, 给个红包,谢谢回帖
btx97: 金币+10, 感谢你这么详细的解答。很有帮助,谢谢。 2013-11-22 05:56:48
|
放在module里好处不少!首先不会多写代码吧,只是多了module/contains/end module三行。用module的话可以把相同功能的子程序以及对应的数据封装在同一个module里。同时一个类的定义也可以和与这个类相关的子程序放在一起。 explicit的意思是函数的interface隐含在module里了,就是module本身保存了变量个数、类型、维度之类的信息。如果用implicit interface,编译器编译时只知道过程的名字,甚至如果你的变量个数不对,编译时都无法发现。如果要加入这样的信息,需要在调用这个过程的程序加入interface block。use了一个类的话,就不需要 implicit interface有很多功能都用不了,比如有可选参数的函数,elemental procedure,有自动数组维度的数组(assumed shaped array),generic interface等,你也不能按参数名指定参数(比如call sub(a=x,b=c)),另外只有一个module内部的过程才能调用这个module的private component。基本上f90比较好用的新功能都用不了。external procedure必须在调用时加interface block才能有explicit interface。 |
2楼2013-11-21 23:35:46













回复此楼