網頁
BloggerAds 廣告
標籤
- Java (96)
- Android (27)
- 演算法 (21)
- c++ (19)
- JavaScript (7)
- OpenMp (6)
- Design Pattern (4)
- 日文歌曲 (4)
- 資料結構 (4)
- Foundation Knowledge Of Programming (3)
- QUT (2)
- CodingHomeWork (1)
- Database (1)
- 英文歌詞 (1)
搜尋此網誌
2011年7月7日 星期四
C++和Java的傳值和傳址(pass by reference in java and c++)
Java和C++對於陣列型態變數的存取都是直接在記憶體上做(call by reference),所以會改變變數值,同樣的對於
基本型態如int,皆為複製一份拷貝來做,並不會影響到原來的值,(call by value)
Java sample:
C++ sample:
對於傳入函式的使用者自訂物件,Java也是call by value,但在c++很特別的地方是,除非programmer指定要傳入的是address,若傳入的是value,是會被函式內的區域變數(Local Variable)覆蓋掉,無法使用,看下例便知:
訂閱:
張貼留言 (Atom)
我的網誌清單
標籤
日文歌曲
(4)
股市
(7)
股票
(9)
英文歌詞
(1)
時事
(1)
硬體(hardware)
(1)
資料結構
(4)
演算法
(21)
數學(Math)
(4)
ACM
(3)
ajax
(7)
algorithms
(1)
Android
(27)
Blog Notes(部落格記事)
(6)
C
(9)
c++
(19)
CodingHomeWork
(1)
Database
(1)
Design Pattern
(4)
Foundation Knowledge Of Programming
(3)
GWT
(1)
How
(2)
J2EE
(1)
Java
(96)
Java語言
(4)
JavaScript
(7)
Leetcode
(4)
LOL
(1)
OpenMp
(6)
QUT
(2)
Uva
(2)
Yahoo知識問答
(11)
沒有留言:
張貼留言