c 中箭頭操作符 和點操作符 的不同

2021-07-11 19:17:42 字數 577 閱讀 4930

乙個左邊是指標.  

乙個左邊是實體

如果p是指標,p->function(); 

如果p是物件,p.function();

記住-〉必須是指標,.左邊必須是物件或者結構體,一般是類物件

首先介紹一下c++中的結構。對於乙個結構來說,

struct mystruct

;如果有個變數mystruct s,那麼使用其中的成員元素時可以用

s.member_a = 1;

如果採用指標方法訪問,比如mystruct * ps,那麼同樣的訪問就必須使用如下形式:

(*ps).member_a = 1;

或者ps->member_a = 1;

c++中當定義類物件是指標物件時候,就需要用到->指向類中的成員;當定義一般物件時候時就需要用到"."指向類中的成員....... 

例如:class a 

如果定義如下:

a *p則:p->play()使用; 左邊是結構指標。

a p 則:p.paly()使用; 左邊是結構變數。

總結:箭頭(->):左邊必須為指標;

點號(.):左邊必須為實體。

關於C C 中的點操作符和箭頭操作符

ps 話說以前竟然一直沒有關注到這個問題啊。不應該啊。今天查了點資料,加上自己寫code的體會,說下一下,作為記錄吧。先概括一下 點操作符 用來引用普通物件。箭頭操作符 用來引用指標物件。舉例子說明一下 比如,我有乙個物件darkray。那麼我可以通過 來呼叫darkray類中中的成員變數。但是如果...

C 點和箭頭操作符的區別

在c 中物件可以通過 來呼叫該物件的成員變數。p.func 如果是指標的話,就不能通過 來呼叫,而只能使用 來呼叫。p func 這種情況的出現是因為使用了結構,對乙個結構來說,struct mystruct 如果定義變數 mystruct s,那麼使用其中的成員元素時可以用 s.member 1 ...

c 中 箭頭 雙冒號 點號 操作符區別

首先介紹一下c 中的結構。對於乙個結構來說,struct mystruct 如果有個變數mystruct s,那麼使用其中的成員元素時可以用 s.member a 1 如果採用指標方法訪問,比如mystruct ps,那麼同樣的訪問必須用箭頭號 ps member a 1 只用在類成員函式和類成員變...