AIDL文件中 in類型和out類型數據的區別
最近困惑於aidl文件中 in類型和out類型數據的區別。網上很多解釋是:in 輸入類型。out輸出類型或者in在客戶端賦值,out在服務端賦值。但更加具體的就沒有了。這裏我貼出我寫的簡單代碼,大家嚐試一下就會有所了解,希望大家能分享下自己的理解。
in表示是輸入參數,out表示是輸出參數,可以傳出某個參數值,inout表示輸入輸出參數,先傳入參數,處理後傳出
傳值,
是把實參的值賦值給行參
那麼對行參的修改,不會影響實參的值
傳地址
是傳值的一種特殊方式,隻是他傳遞的是地址,不是普通的如int
那麼傳地址以後,實參和行參都指向同一個對象
傳引用
真正的以地址的方式傳遞參數
傳遞以後,行參和實參都是同一個對象,隻是他們名字不同而已
對行參的修改將影響實參的值
我所理解的in類型類型是值傳遞,而out類型類型是引用傳遞。
最後更新:2017-04-02 06:52:19