成員運算子 與指標運算子 的區別

2021-07-16 18:05:50 字數 432 閱讀 7490

在間接引用的時候,例如指標*p

就用p->member

如果是直接引用或者類本身或者內部引用就用.

比如classa.member

或classtype& copyconstructor(classtype &classa)

要確定是用 . 還是用 -> 必須先確定它前面的是乙個物件還是乙個物件指標。

a a, *p;

p = &a;

則a是乙個a類的物件,而p是乙個指向a物件的指標。

則呼叫a類的成員函式時a是用 . 即a.set();

而p是用->, 即p->set();

而若p = new a[10]; 則p 是乙個指向物件陣列的指標。即p[0],p[1]...都是物件,而不是指標,即要用p[0].set();

NOT運算子與 運算子

6.4.2 not運算子與 運算子 對於簡單的條件查詢,not運算子與 運算子的功能幾乎沒有什麼區別,那麼not運算子的優勢體現在 呢?答案是它可以與其他運算子組合使用,這一點是 運算子所不能實現的。在6.4.1節已經介紹了not運算子與in運算子組合使用的例子,下面給出乙個not運算子與betwe...

關於非成員運算子和成員運算子的區別

運算子的過載一般我們會使用以下兩種形式 成員函式 非成員函式 其實這兩種定義不僅在語法上,在語義上也是有差別的。語法上,定義為成員函式,比如 operator 只接受乙個引數,而非成員函式接受2個引數語義上,這涉及到臨時物件無法繫結到左值引用的問題,比如我們過載operator operator s...

(運算子) 運算子

運算子既可作為一元運算子也可作為二元運算子。備註 unsafe context data guid 00bf87717d88a9fac1afadb796c675da 一元 運算子返回運算元的位址 要求 unsafe 上下文 bool data guid 9efd189df2cfb88799dca08...