[問題] 關於重載<<的問題

看板C_and_CPP作者 (我並不癡0.0)時間13年前 (2010/09/30 17:14), 編輯推噓2(2015)
留言17則, 3人參與, 最新討論串1/1
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 ) ( 未必需要依照此格式,文章條理清楚即可 ) 麻煩各位高手幫我解答 Q_Q 我用DEV C++ 我在.h裡 class Ts { int array[200]; //不是重點 public: int A; friend ostream &operator<<(ostream& out,Tset& r) { out<<r.A; return out; } }; int main() { Ts a; cin>> a.A ; //這邊也想做 重載>> 不過還沒弄 cout << a ; return 0; } 他就說 no match for"operator<<" in "std::cout<<A" 為什麼他直接忽視我在.h檔裡寫的呢@@ p.s .h檔裡我還有另外定義 + - * / 做其他運算 都能work~ - ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 115.43.209.233 ※ 編輯: Sornecronoc 來自: 115.43.209.233 (09/30 17:18)

09/30 18:01, , 1F
http://codepad.org/GOHJxaNk 並沒有你說的錯誤訊息啊
09/30 18:01, 1F

09/30 18:01, , 2F
我只是把你這篇的程式碼貼上,補上iostream、std,還有幫
09/30 18:01, 2F

09/30 18:01, , 3F
你把Test改成Ts而已
09/30 18:01, 3F

09/30 18:02, , 4F
vc++2010&gcc都順利編譯完成
09/30 18:02, 4F

09/30 18:42, , 5F
我把他寫在.h裡再include就出事 直接寫在.cpp裡就ok
09/30 18:42, 5F

09/30 18:42, , 6F
請問這是什麼巫術@@?
09/30 18:42, 6F

09/30 18:42, , 7F
請問你為什麼不完整貼出來!!?
09/30 18:42, 7F

09/30 18:44, , 8F
我分開寫在 .h 檔裡還是沒問題
09/30 18:44, 8F

09/30 18:44, , 9F
建議貼上你完整的錯誤訊息
09/30 18:44, 9F

09/30 18:45, , 10F
還有你 .h 與 .cpp 裡面各是怎麼寫的完整內容
09/30 18:45, 10F

09/30 18:45, , 11F
囧我已經完整貼出來了@@只差寫一起ok include不ok/ \
09/30 18:45, 11F

09/30 18:47, , 12F
那你的include寫在哪裡呢?
09/30 18:47, 12F

09/30 18:48, , 13F
第一行 #include <iostream> 第2行#include "xxx.h"
09/30 18:48, 13F

09/30 18:50, , 14F
我把我可以用的程式碼給你看 你自己比較看看吧
09/30 18:50, 14F

09/30 18:50, , 15F

09/30 18:50, , 16F
09/30 18:50, 16F

09/30 18:54, , 17F
!謝謝我研究看看!!
09/30 18:54, 17F
文章代碼(AID): #1Cf5JrSn (C_and_CPP)