2013-12-14 157 views
1

如果我有一個結構說「蘋果」,那麼有沒有辦法來檢查某個特定的元素是否在結構中存在「顏色」?檢查一個結構中是否存在一個元素C

struct apple A{ 
char color; 
int pack; 
} 

使用這種可能知道這種結構比它的名字其他的內部功能.....

+0

在什麼情況下這是合理的? –

+3

您正在談論反思。我不認爲c支持 – smac89

+0

@ Smac89能否給我們一個反思的例子?和什麼語言支持它? –

回答

2

C不支持你以後的事 - 並且要求它聽起來像是你的設計出了問題。如果你正在解釋一個流,那麼在流中應該有一個標識符和標識符,以表示後面流中的結構。

4

在C這樣做的唯一方法是使用特定領域你有興趣如果程序編譯,則它存在。如果沒有,比它要麼沒有,要麼你有其他錯誤。

+0

流程是這樣的,當一個讀請求進入閱讀界面時,只有它與屬性列表映射並試圖取出屬性。這是因爲讀取接口處理的結構有不同的類型。所以它更成爲運行時問題...... –

+1

@GinuJacob:當它是運行時問題時,您使用元信息來確定您讀取的數據的類型。如果沒有這些元信息,即使在理論上也不能解決問題,因爲結構僅僅是編譯時概念,在運行時甚至不存在。 – 2013-12-14 15:51:41

相關問題