C 左移運算子過載

2022-02-03 05:34:30 字數 859 閱讀 9566

通過cout《物件,列印出複數的實部和虛部,這樣一來,就需要過載cout類的位移《運算函式,但是我們並不能拿到cout原始碼,在visual studio我們看到的也僅僅是他的定義

若想訪問c1的私有屬性,則應當宣告為友元函式

通過定義可以看出cout類的返回值是ostream型別的變數out

void

operator

<

#include #include

using

namespace

std;

class

cplxaddself

void

printmyself()

private

:

inta;

intb;

};

void

main()

輸出結果:

皆大歡喜,.......不過,要是以為事情結束那就太簡單了

如果我們稍加修改就報錯了,其實真正實現的理想方案是滿足鏈式程式設計

void

main()

所以位移運算需要過載為

ostream& operator

<

void

main()

輸出結果:

左移運算子過載

1.作用 可以輸出自定義資料型別,比如輸出乙個類物件。includeusing namespace std include 左移 運算子過載 class person private 加入利用成員函式過載左移運算子 p.operator cout 簡化版本 p void operator cout ...

c ,左移運算子的過載

在c 中,提供了運算子過載的方式,來讓程式的可用性更強 這裡,介紹一下左移運算子 左移運算子的過載可以幫助我們更好的輸出自定義的資料型別,可以做到簡潔,在不浪費更多 行的情況下,使用函式,來輸出類中的成員屬性資料 這裡我們先建立乙個類 將成員屬性設定為私有,當然設定為公共型別也可以,設定私有型別是為...

C 中左移運算子的過載

1.不要濫用運算子過載,除非有需求 2.不能對內建的資料型別進行過載 3.對於自定義的資料型別,不可以直接用cout 輸出,需要過載左移運算子 4.如果利用成員函式過載,無法實現cout在左側,因此不用成員過載 5.利用全域性函式實現左移運算子過載 6如果想訪問類中私有的內容可以配合全域性友元函式實...