Re: [問題] 將callback轉型成原本的class
: --
: ※ 發信站: 批踢踢實業坊(ptt.cc)
: ◆ From: 118.168.127.139
: 推 PsMonkey:其實... 用中文感覺很怪...... 10/14 21:16
: → adrianshum:我個人是寧願用 pointer 一詞。reference 常有不清混淆 10/14 22:33
: → adrianshum:還有其實 Java 的 ref 根本就是概念上的 pointer,只是 10/14 22:34
: → adrianshum:沒有像C/C++那種 pointer arithematics 而己 10/14 22:34
: → Chikei:ptr +1,用ref常會有人問call by ??跟參照到哪個實體的問題 10/14 22:59
主要是看個人對 pointer 的定義。
我個人認為能作 pointer arithmetic 的才叫 pointer。
以下面的 C code 來說:
int a = 87;
int *p = &a;
printf("p=%d\n", *p);
*p 這個 expression 中,* 在此的作用一般稱為 dereference,Java 中的
non-primitive value 唯一能作的事(除了 assignment)就是 dereference,
那這種值稱為 reference value 不是很適合嗎?
*array element access/field access/method invocation 都隱含 dereference
另,我自己傾向把直接指向你要存取的數據所在的地方(offset 不管)這種稱
pointer,reference 則是你只知道可透過他來觸碰目標數據,中間有多少
indirection 不曉得。故你可以說 HANDLE 是一種 reference value,pointer
value 是一種 reference value,但是 pointer/HANDLE 都是更 specific 的
東西,把 Java ref value 歸為 pointer 不是很恰當(Java ref value 在實作
上比較接近 HANDLE,但 Java platform 就是希望 programmer 不要去考慮
實作的細節)。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.173.239.194
※ 編輯: sbrhsieh 來自: 218.173.239.194 (10/14 23:21)
討論串 (同標題文章)
java 近期熱門文章
PTT數位生活區 即時熱門文章