cannot access protected member declared in class 'cricle'
我遇到這種錯誤是在這種情況下:
class cricle
****
friend ostream & operator<<(ostream &,const cricle );
ostream &operator<<(ostream & output,const cricle c)
{ output<<"cricle\n"<<"the radius is:"ostream &operator<<(ostream & output,const cricle c)
{ output<<"cricle\n"<<"the radius is:"《在cricle類中用友元函式運算子過載了輸出運算子"<<";
錯誤顯示:x,y不能訪問類的保護成員。
解決辦法:
ostream &operator<<(ostream & output,const cricle &c)
(1)同時還發現了用過載的不能輸出類的成員函式,不然會出現這樣的錯誤:
'getarea' : cannot convert 'this' pointer from 'const class cricle' to 'class cricle &'
所以只能輸出資料;
在主函式中這樣呼叫:
cricle c(2,3,4);
cout<
輸出運算子過載
程式的版權和版本宣告部分 檔名稱 test.cpp 作 者 任子儀 完成日期 2014年 4月 22日 版 本 號 v12.1 輸入描述 無 問題描述 程式輸出 問題分析 略 演算法設計 略 includeusing namespace std class complex complex doubl...
過載輸入輸出運算子
我們平時可以用流 std cout str n 輸出 輸入字串和整型等內建型別的值。但是對於我們自定義的類,比如 student 類,卻不能直接通過 cout student 這樣的形式來輸出類的內容或給類賦值。怎麼辦呢?我們可以通過過載輸出 輸入運算子,讓自定義的類也支援這樣的操作。通常情況下,輸...
過載輸入輸出運算子
過載輸入輸出運算子 過載輸出運算子 第二個引數一般來說是乙個常量的引用,該常量是我們想要輸出的類型別。用引用是因為我們希望避免複製實參 用常量是因為通常列印物件的時候不需要改變物件的內容 輸出運算子應儘量減少格式化的操作,尤其是換行符,這樣有利於使用者對輸出格式的控制。一般會宣告為友元函式 frie...