亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

c++中的指針和java中的引用有什么區別?

發布時間:2020-05-23 15:03:38 來源:億速云 閱讀:268 作者:鴿子 欄目:編程語言

Java的引用和C++的指針都是指向一塊內存地址的,通過引用或指針來完成對內存數據的操作,但是它們在實現,原理作用等方面卻有區別。

(1)類型:引用其值為地址的數據元素,Java封裝了的地址,可以轉換成字符串查看,長度也可以不必擔心。C++指針是一個裝地址的變量,長度一般是計算機字長,可以認為是個int。

(2)所占內存:引用聲明時沒有實體,不占空間。C++指針如果聲明之后會用到才會賦值。如果用不到不會分配內存。

(3)類型轉換:引用的類型轉換,也可能不成功,運行時拋異常或者編譯就不能通過。C++指針指示個內存地址,指向內存,對程序來說還都是一個地址,但可能所指的地址不是程序想要的。

(4)初始值:引用初始值為java關鍵字null。C++指針是int,如不初始化指針,那它的值就不是固定的了,這很危險。

(5)計算:引用不可以計算。C++指針是int,他可以計算,如++或--,所以經常用指針來代替數組下標。

(6)內存泄露:Java引用不會產生內存泄露。C++指針是容易產生內存泄露的,所以程序員要小心使用,及時回收。

(7)作為參數:Java的方法參數只是傳值,引用作為參數使用時,會給函數內引用的值的COPY,所以在函數內交換倆個引用參數是沒意義的,因為函數只交換參數的COPY值,但在函數內改變一個引用參數的屬性是有意義的,因為引用參數的COPY所引用的對象時和引用參數是同一個對象。

C++指針作為參數給函數使用,實際上就是它所指的地址在被函數操作,所以函數內使用指針參數的操作都將直接作用到指針所指向的地址(變量,對象,函數等)。

以上就是java中的引用與c++中的指針的區別的詳細內容,更多請關注億速云其它相關文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

青阳县| 惠安县| 青浦区| 焉耆| 郴州市| 威远县| 吉林省| 浪卡子县| 定陶县| 兴城市| 远安县| 息烽县| 兖州市| 科技| 拜泉县| 宁津县| 德格县| 乐亭县| 三门峡市| 丹巴县| 澄迈县| 都江堰市| 九寨沟县| 长岛县| 长兴县| 汾阳市| 迁安市| 江达县| 保康县| 二连浩特市| 阿合奇县| 金沙县| 静乐县| 伽师县| 万州区| 锡林郭勒盟| 灵丘县| 社旗县| 玛沁县| 赣州市| 邓州市|