5
如果我有一个字段名'fieldname'的结构,是否有可能只使用变量访问该字段中的数据?IDL:使用存储在变量中的字段名称访问结构字段?
即。
X = '字段名'
是有可能做
数据=结构(X)。在某些方面?我想使用x中的字符串作为字段名称。
如果我有一个字段名'fieldname'的结构,是否有可能只使用变量访问该字段中的数据?IDL:使用存储在变量中的字段名称访问结构字段?
即。
X = '字段名'
是有可能做
数据=结构(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 。
很高兴看到另一个IDL程序员!也许有一天我们可以从那些CORBA程序员那里收回'我们'的标签.... – 2010-05-10 22:16:42