如果我有一个字段名称为“字段名称”的结构,是否可以仅使用变量访问该字段中的数据?
IE。
x = '字段名'
有可能吗
data = struct.(x) 以某种方式?我想使用 x 中的字符串作为字段名称。
如果我有一个字段名称为“字段名称”的结构,是否可以仅使用变量访问该字段中的数据?
IE。
x = '字段名'
有可能吗
data = struct.(x) 以某种方式?我想使用 x 中的字符串作为字段名称。
是的,这可以使用以下TAG_NAMES
功能:
tnames=TAG_NAMES(struct)
tindex=WHERE(STRCMP(tnames,'fieldname') EQ 1)
data=struct.(tindex)
调用TAG_NAMES
返回一个字符串数组,表示在 中定义的标签struct
。该语句返回匹配字符串WHERE
的索引。最后,索引被传递给操作,该操作通过其数字标签索引提取字段。tnames
'fieldname'
struct.(tindex)
当然,在实际应用程序中,您会想要检查是否tindex
成功匹配到某个东西,否则 IDL 将在索引为 -1 的结构查找中阻塞。