c 運算子過載能否讓兩個類的指標相加

時間 2021-09-02 07:14:46

1樓:匿名使用者

呼叫a+b,

如果a和b都是指標,就無法進行操作符過載,他不符合c++類操作符過載規則,它的其中一個規則:必須有一個引數是一類為引數的。

如果a,b是類,就能容易過載。

val* operator + (val* a,val* b) 不能通過編譯

2樓:匿名使用者

1.第一行的運算子過載為什麼最後myvector後面要加一個v,好像並沒有定義啊?

這是函式的形式引數,就好像你定義int fun(int i){}裡面的i一樣。

2.第一行為什麼是myvector myvector::operator()而不是myvector::opertator()為什麼要重複一次。

第一個是返回值型別,第二個是類名

3.this 這個句子中的v.x指的是什麼啊?this->x+v.x 這兩個x分別是什麼啊?

this->x指的是當前物件的成員x,v.x指的是引數v的成員x

關於運算子過載,可以參考

關於this指標,可以參考

3樓:香絮閣

指標的加,乘,除,模等運算沒有任何意義。

4樓:季敏

public val* operator + (val* a,val* b)

C 怎樣過載下標運算子,C 運算子過載時過載賦值運算子和下標運算子時型別中的 是什麼意思?為什麼要加?

過載運算 在需要過載的類中宣告 classname operator int i 就可以了。引數i是代表傳入的 括號中的值 索引 因為我們使用 的使用會用到類似 a i value的表示式去賦值,所以返回類的引用可以支援賦值操作。這裡有我修改的一段示例 上上西 給個示例,以樓上 為基礎,再包含標頭檔...

c 輸出運算子過載問題,C 運算子過載 為什麼流運算子不能過載為成員函式?

呵呵,ostream os就是cout 所以cout node endl 就是先 cout node 根據friend ostream operator ostream os node temp 知輸出node,然後生成新的流物件cout,就變成了cout endl,又是cout 和endl的過載,...

c 過載運算子用於輸出複數

阿君 宣告為友元類,friend ostream operator 實現部分 ostream operator 書道聖儒 過載輸出運算子 include class ccomplex ccomplex double rv ccomplex double rv,double iv friend cco...