C 類的指標和操作符過載

2021-09-12 18:39:26 字數 1112 閱讀 6005

一 類的指標

1 **

#include using namespace std;

class crectangle

};

void crectangle::set_values(int a, int b)

int main()

2 執行

[root@localhost test]# g++ test.cpp -g -o test

[root@localhost test]# ./test

a area: 2

*b area: 12

*c area: 2

d[0] area: 30

d[1] area: 56

3 說明

要想直接引用乙個由指標指向的物件中的成員,需要使用操作符->。

二 操作符過載的例子

1 **

#include using namespace std;

class cvector

;cvector(int, int);

cvector operator +(cvector);

};

cvector::cvector(int a, int b)

cvector cvector::operator+(cvector param)

int main() {

cvector a(3, 1);

cvector b(1, 2);

cvector c;

//c = a + b;

c = a.operator+(b);

cout << c.x << "," << c.y<2 執行

[root@localhost test]# g++ test.cpp -g -o test

[root@localhost test]# ./test

4,3

3 說明

操作符合過載可以用下面兩種方式進行呼叫:

c = a + b;

c = a.operator+(b);

C 類操作符過載筆記

不能改變操作符優先順序 不能改變操作符的結合性 不能改變操作符所需要的運算元 不能建立新的操作符 對於二元操作符過載,如果操作符左邊是類 那麼就在該類內部成員函式過載操作符即可 如果操作符左邊不是類,而是乙個常量,那麼就必須在類的外部定義乙個操作符過載函式 有乙個最基本條件 一定有乙個一元是乙個自定...

C 操作符過載

1.作為成員過載 class myclass public myclass operator const myclass d cons friend myclass operator const myclass a1,const myclass a2 關於返回值型別的討論 呼叫者堆疊裡返回乙個物件效...

C 過載操作符

過載操作符 一 過載操作符的定義 1.過載操作符的結構 返回型別 operator 需要過載的操作符 形參列表 注意 形引數目應和運算元數目相同。2.過載操作符的幾條注意事項 1 過載的操作符名不能通過連線其他合法符號來建立任何新的操作符。如 2 過載操作符必須具備至少乙個類型別或列舉型別的運算元。...