没有合适的资源?快使用搜索试试~ 我知道了~
interface功能详解
资源推荐
资源详情
资源评论
接口界面块:Interface
功能详解
说明:子程序可看做无返回值的函数,为了方便叙述,如未特别说明,文中将
函数(function)和子程序(subroutine)统称为函数。
函数的接口信息用于告诉编译器应该如何正确调用该函数,它包括参数和
返回值的数量、类型等信息。因此每个函数都必须具有相应的接口信息,缺省
情 况 具 有 隐 式 声 明 , 而 使 用 interface 则 可 显 式 声 明 函 数 的 接 口 信 息 。
Interface 的主要功能:
1 、明确外部函数(external procedure) 或虚函数(dummy procedure)的接
口信息,包括:输入输出参数的类型和属性、返回值类型、函数属性;
2、定义通用过程名,即函数重载(overload);
3、操作符(+,-,*,/,et al)和赋值符(=)重载。
下面将分别对以上三种功能进行说明。
1、接口界面块
内部函数(contains)、模块(module)中的函数,以及 Fortran 标准函数 (如:
sind、abs 等) 均自动包含显式接口,不需要也不能再次声明接口信息,因此上
述情况不在讨论之中。我们建议将外部函数封装在 module 中使用。
外部函数缺省具有隐式接口,对一些常规函数,用户不必显示声明其接口信
息 , 编 译 器 也 能 正 确 识 别 。 但 当 外 部 函 数 的 形 参 具 有 ALLOCATABLE,
ASYNCHRONOUS, OPTIONAL, POINTER, TARGET, VALUE, VOLATILE 属性
时,必须显示声明接口信息。下列情况之一也必须使用接口界面块:
● 外部函数返回值为指针、数组或可变长度字符串;
● 形参为数组片段;
● 参数个数不确定或包含可选参数;
● 改变参数传递顺序;
● 子程序中扩展了赋值号的使用范围。
接口界面块的使用较为简单,在接口界面块(interface-end interface)之间写入
函数形参类型说明语句,即去掉所有可执行语句后的剩余部分。下面的例子给
出了函数返回数组时以及具有可选参数时使用 interface 的例子:
program Fcode_cn
integer::i=0, j=1, k=2, m(2)
资源评论
yufulin321
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功