C 第31課 完善複數類

2021-10-02 11:37:52 字數 1350 閱讀 1854

本文學習自 狄泰軟體學院 唐佐林老師的 c++課程

實驗1complex.h

#ifndef _complex_h_

#define _complex_h_

class complex

;#endif

complex.cpp

#include "complex.h"

#include "math.h"

//構造函式引數在宣告的地方已經指定為了預設值

complex::complex(double a, double b)

double complex::geta()

double complex::getb()

double complex::getmodulus()

complex complex::operator + (const complex& c)

complex complex::operator - (const complex& c)

complex complex::operator * (const complex& c)

complex complex::operator / (const complex& c)

bool complex::operator == (const complex& c)

bool complex::operator != (const complex& c)

/*對於賦值操作符的過載,必須將左運算元(當前物件)返回

*/complex& complex::operator = (const complex& c)

return *this;

}

解析: 對於賦值操作符的過載,必須將左運算元(當前物件)返回,因為對於賦值而言,是可以進行連續的賦值操作的,這是c和c++中原生的賦值操作所具有的語意,我們在過載之後也不能改變這個語意,所以 對於賦值操作符的過載而言,我們必須將左運算元直接返回。

c++規定賦值操作符(=) 只能過載為成員函式

第31課 完善的複數類

1.1 運算 1.2 比較 1.3 賦值 1.4 求模 modulus 2.1 統一複數與實數的運算方式 complex operator const complex c 因為物件的this關鍵字的緣故,省去乙個引數 complex operator const complex c complex ...

Python第31課到42課

python第31課到42課 讀檔案f file data.txt data f.read print data f.close 其他用法 data.txt中存的內容是 hi my name is mike helloworld 當執行f file data.txt data f.readlines...

第31課 KMeans 最簡單的聚類演算法

聚類並非一種機器學習專有的模型或演算法,而是一種統計分析技術,在許多領域受到廣泛應用。廣義而言,聚類就是通過對樣本靜態特徵的分析,把相似的物件,分成不同子集 後面我們將聚類分出的子集稱為 簇 被分到同乙個子集中的樣本物件都具有相似的屬性。在機器學習領域,聚類屬於一種無監督式學習演算法。許多聚類演算法...