2013-04-05 16 views
0

我發現android的本地層使用類和結構。爲什麼android awesomeplayer使用struct而不是類

例如,MediaPlayer,Stagefrightplayer,Audioplayer,MetaData是類別。 但AwesomeplayerMediaSource是結構。

雖然我讀過類和結構類似的用法,但我不知道爲什麼Awesomeplayer被創建爲struct。有沒有什麼理由或只是開發商的口味?

回答

1

enter image description here您試圖將awesomeplayerMediaSource作爲Android API提及嗎?不,它們不是,它們是從C++轉換而來的結構;他們不屬於Android庫!

請參閱stagefright的圖表,該庫是來自C/C++核心。 Android是linux核心,可以將C/C++ utils,libs帶入其中。

參考:http://pierrchen.blogspot.sg/2012/03/share-with-you-what-have-learned-about.html

+0

這是什麼意思「從C++轉換結構」? AwesomePlayer.cpp內置到libstagefright.so中。 而Awawesomeplayer的實例是在StagefrightPlayer上創建的。 – user2247257 2013-04-05 03:59:00

+0

請查看已更新的答案 – 2013-04-05 04:20:00

+0

我找不到您的答案和我的問題之間的關係。 我的問題是爲什麼AwesomePlayer被聲明爲結構而不是類。 我不知道這個事實對系統有影響,或者只是開發者的口味。 – user2247257 2013-04-05 04:27:26

相關問題