作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
关于可选参数的使用,我有以下问题。假设我有以下例程aaa
在模块 m_aaa
中定义
MODULE m_aaa
SUBROUTINE aaa(a, b)
INTEGER :: a
INTEGER, OPTIONAL :: b
END SUBROUTINE
END MODULE
m_aaa
的例程。 .是否可以像这样传递可选参数
! Variant 1:
SUBROUTINE bbb(c, d)
USE m_aaa
INTEGER :: c
INTEGER, OPTIONAL :: d
CALL aaa(c,d)
END SUBROUTINE
! Variant 2:
SUBROUTINE bbb(c, d)
USE m_aaa
INTEGER :: c
INTEGER, OPTIONAL :: d
IF (PRESENT(d)) THEN
CALL aaa(c,d)
ELSE
CALL aaa(c)
ENDIF
END SUBROUTINE
最佳答案
在将可选虚拟参数作为实际参数传递给另一个可选虚拟参数之前,没有必要检查它是否存在。
对于不存在的可选实际参数,12.5.2.12 第 4 段(ISO/IEC 1539-1(2010 年 6 月 7 日草案)又名 Fortran 2008)允许这样做:
Except as noted in the list above, it may be supplied as an actual argument corresponding to an optional dummy argument, which is then also considered not to be present.
关于fortran - 是否有必要在将可选参数传递给另一个可选参数之前检查它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26367505/
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!