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