C語言關鍵字

complex.h

#ifndef COMPLEX_H

#define COMPLEX_H

#include using namespace std;

class Complex

{

public:

//explicit :防止隱士類型轉換

//explicit Complex(float real = 0, float vir = 0);

Complex(float real = 0, float vir = 0);

~Complex();

//類型轉換函數(shù)無需寫返回值類型,但是函數(shù)定義中必須要有返回值

operator int();

operator float();

void value();

friend Complex operator +(Complex &c1, Complex &c2);

friend Complex operator -(Complex &c1, Complex &c2);

private:

float m_fReal;

float m_fVir;

};

Complex operator +(Complex &c1, Complex &c2);

Complex operator -(Complex &c1, Complex &c2);

complex.cpp

de "complex.h"

Complex::Complex(float real, float vir)

{

m_fReal = real;

m_fVir = vir;

}

Complex::~Complex()

{}

Complex Complex::operator+(int data)

{

Complex com;

com.m_fReal = m_fReal + data;

com.m_fVir = m_fVir;

cout << "Complex::operator+(int data)" << endl;

return com;

}

Complex Complex::operator+(float data)

{

Complex com;

com.m_fReal = m_fReal + data;

com.m_fVir = m_fVir;

cout << "Complex::operator+(float data)" << endl;

return com;

}

Complex::operator float()

{

cout << "operator float()" << endl;

return (m_fReal + m_fVir) * 0.05;

}

Complex::operator int()

{

cout << "operator int()" << endl;

return m_fReal;

}

void Complex::value()

{

cout << '(' << m_fReal << ")+(" << m_fVir

<< ")i" << endl;

}

Complex operator +(Complex &c1

, Complex &c2)

{

Complex c;

c.m_fReal = c1.m_fReal + c2.m_fReal;

c.m_fVir = c1.m_fVir + c2.m_fVir;

cout << "operator+" << endl;

return c;

}

Complex operator -(Complex &c1

, Complex &c2)

{

Complex c;

c.m_fReal = c1.m_fReal - c2.m_fReal;

c.m_fVir = c1.m_fVir - c2.m_fVir;

cout << "operator-" << endl;

return c;

}

main.cpp

nclude "complex.h"

void fun(Complex com)

{

com.value();

}

int main()

{

//int 轉換成Complex:隱士類型轉換

//fun(23);

Complex com(3, 7);

com.value();

Complex com2(4, 9);

com2.value();

Complex com3 = com + com2;

com3.value();

Complex com4 = com - com2;

com4.value();

return 0;

}



#endif // COMPLEX_H

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末聚凹,一起剝皮案震驚了整個濱河市割坠,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌妒牙,老刑警劉巖彼哼,帶你破解...
    沈念sama閱讀 216,692評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異湘今,居然都是意外死亡敢朱,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,482評論 3 392
  • 文/潘曉璐 我一進店門摩瞎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來拴签,“玉大人,你說我怎么就攤上這事愉豺÷ㄓ酰” “怎么了茫因?”我有些...
    開封第一講書人閱讀 162,995評論 0 353
  • 文/不壞的土叔 我叫張陵蚪拦,是天一觀的道長。 經常有香客問我冻押,道長驰贷,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,223評論 1 292
  • 正文 為了忘掉前任洛巢,我火速辦了婚禮括袒,結果婚禮上,老公的妹妹穿的比我還像新娘稿茉。我一直安慰自己锹锰,他們只是感情好芥炭,可當我...
    茶點故事閱讀 67,245評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著恃慧,像睡著了一般园蝠。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上痢士,一...
    開封第一講書人閱讀 51,208評論 1 299
  • 那天彪薛,我揣著相機與錄音,去河邊找鬼怠蹂。 笑死善延,一個胖子當著我的面吹牛,可吹牛的內容都是我干的城侧。 我是一名探鬼主播易遣,決...
    沈念sama閱讀 40,091評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼嫌佑!你這毒婦竟也來了训挡?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 38,929評論 0 274
  • 序言:老撾萬榮一對情侶失蹤歧强,失蹤者是張志新(化名)和其女友劉穎澜薄,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體摊册,經...
    沈念sama閱讀 45,346評論 1 311
  • 正文 獨居荒郊野嶺守林人離奇死亡肤京,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,570評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了茅特。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片忘分。...
    茶點故事閱讀 39,739評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡罕袋,死狀恐怖剧蚣,靈堂內的尸體忽然破棺而出赵刑,到底是詐尸還是另有隱情购披,我是刑警寧澤饥侵,帶...
    沈念sama閱讀 35,437評論 5 344
  • 正文 年R本政府宣布辆影,位于F島的核電站奋渔,受9級特大地震影響碟案,放射性物質發(fā)生泄漏祖很。R本人自食惡果不足惜笛丙,卻給世界環(huán)境...
    茶點故事閱讀 41,037評論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望假颇。 院中可真熱鬧胚鸯,春花似錦、人聲如沸笨鸡。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,677評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至哥桥,卻和暖如春蓝牲,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背泰讽。 一陣腳步聲響...
    開封第一講書人閱讀 32,833評論 1 269
  • 我被黑心中介騙來泰國打工例衍, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人已卸。 一個月前我還...
    沈念sama閱讀 47,760評論 2 369
  • 正文 我出身青樓佛玄,卻偏偏與公主長得像,于是被迫代替她去往敵國和親累澡。 傳聞我的和親對象是個殘疾皇子梦抢,可洞房花燭夜當晚...
    茶點故事閱讀 44,647評論 2 354

推薦閱讀更多精彩內容