概述
目录:
- 一、Procedure
- 1.1 基本说明&定义
- 1.2 关键字参数
- 二、Function
- 2.1 基本说明&定义
- 2.2 关键字参数
参考:IDL中函数中的带有关键字的参数的使用
参考:IDL学习笔记(2)--函数与过程
参考:IDL中的关键字参数(keywords parameter)
一、Procedure
1.1 基本说明&定义
过程,无返回值
定义方式如下:
PRO Procedure_Name, argument1, ..., argumentn
. . .
END
调用方式如下:
Procedure_Name, argument1, ..., argumentn
1.2 关键字参数
在IDL中,过程或者函数都可以有关键字参数(keyword parameter)。这些参数一般用作可选参数。
下面例子中有2个过程,将文件名命名为 test.pro,则 test过程 为主过程,直接运行此过程,f1过程 中的 z 为关键字参数,DE 为其标签(tag),在定义的函数内使用该参数的时候,注意要使用变量 z,而不是标签 DE。比如,在第7行中的 keyword_SET() 引用的是变量名 z,而不应该用标签名(tag name)。
其中“/DE”表示将 DE 赋值为1。
PRO TEST
F1, 10, /DE
PRINT, "-----------------------"
F1, 10, DE=4
END
PRO F1, a, DE=z
IF KEYWORD_SET(z) THEN PRINT, "de=", z
PRINT, "a=", a
END
输出结果如下:
de=
1
a=
10
-----------------------
de=
4
a=
10
二、Function
2.1 基本说明&定义
函数,有返回值
定义方式如下:
FUNCTION Function_Name, argument1, ..., argumentn
. . .
END
调用方式如下:
varName = Function_Name(argument1, ..., argumentn)
2.2 关键字参数
在IDL中,过程或者函数都可以有关键字参数(keyword parameter)。这些参数一般用作可选参数。
在调用 Plus_Minus 函数的时候,根据添加不同的关键字执行不同的操作(加法或减法)
PRO TEST
a = Plus_Minus(3, 8, /PLUS)
PRINT, a
PRINT, "-----------------------"
b = Plus_Minus(3, 8, /MINUS)
PRINT, b
END
FUNCTION Plus_Minus, a, b, PLUS=plus, MINUS=minus
IF KEYWORD_SET(plus) THEN tmp = a + b
IF KEYWORD_SET(minus) THEN tmp = a - b
RETURN, tmp
END
输出结果如下:
11
-----------------------
-5
最后
以上就是温婉纸鹤为你收集整理的【297】IDL 过程、函数&关键字参数的全部内容,希望文章能够帮你解决【297】IDL 过程、函数&关键字参数所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复