C 學習日記 運算子過載

2021-09-12 12:24:11 字數 1228 閱讀 8898

c++運算子過載:賦予運算子另一種作用,實現自定義型別的運算

如物件+物件變成int+int一樣

c++運算子過載內容:

1.友元過載 /友元=》宣告 友元關係是單向的,不可傳遞/

2.輸入輸出流過載

class cstring

else

}~cstring()

cstring(const cstring &src)

cstring& operator=(const cstring &src)

delete _pstr;

_pstr=new char[strlen(src._pstr)+1];

strcpy(_pstr,src._pstr);

return *this;

} bool operator>(const cstring &src)const//物件之間》的過載

bool operator

bool operator==(const cstring &src)const//物件之間=的過載

int length()const

char operator(int index)const//物件之間的過載

const char* c_str()const

private:

char *_pstr;

friend cstring operator+(const cstring &lhs, const cstring &rhs);//友元宣告

friend ostream& operator<

};cstring operator+(const cstring &lhs, const cstring &rhs)//對於物件+物件的過載

C 學習 運算子過載

同函式過載一樣,算數操作符過載能夠帶給我們操作不同資料型別的方法,包括你自己定義的類。我們日常最常用的就是加 減 乘 除,而它們的性質又有些相似。所以,它們的運算子實現方式也有些相似。共有三種實現方式 首先,我們介紹怎樣使用友鄰函式定義操作符過載。看下面的 include class cents 使...

c 學習運算子過載

運算子過載 1 實驗目的 學習掌握重定義與類有關的運算子。把握過載運算子的時機。學習掌握把乙個類物件轉換為另乙個類物件。學習掌握過載為成員與友元的區別及其帶引數的情況。學習掌握值返回與引用返回的區別及應用時機。2 實驗內容 1 生成乙個表示複數的類fs。複數的實部sb和虛部xb作為其資料成員。提供成...

C 學習 運算子過載

運算子過載的本質 過載的運算子是帶有特殊名稱的函式,函式名是由關鍵字 operator 和其後要過載的運算子符號構成的。與其他函式一樣,過載運算子有乙個返回型別和乙個引數列表。大多數的過載運算子可被定義為普通的非成員函式或者被定義為類成員函式。非成員函式 需要為每次操作傳遞兩個引數 box oper...