地獄 !テキストを標準出力に出力するのに役立つクラスを作成しようとしています...とにかく、1つのことを除いてすべてが機能しています。呼び出されたクラスのオブジェクトを作成したとしましょう。これを行うと、すべてが正常に機能します。
out<<"test test"<<std::endl;
そして、私がこれを行うときにも機能します:
out<<QString("another string")<<std::endl;
しかし、この 2 つのことを連鎖させようとすると、次のようになります。
out<<"test test"<<std::endl<<QString("another string")<<std::endl;
非常に大きなエラーが発生しました。最終的には、operator<< が QString 型のパラメーターを受け入れないことを示しています。QString をチェーンしないと問題なく動作するため、これは奇妙です...これも動作します:
out<<"test test"<<std::endl<<"another string"<<std::endl;
この:
out<<QString("another string")<<std::endl<<"test test"<<std::endl;
だから私は自分の operator<< 関数に問題があると思います... operator<< を正しく作成しなかったか、正しい値を返しません。または、他の何かが間違っている可能性があります。とにかく、私はそれを理解できないので、私を助けてくれませんか? 以下はソースコードです:
output.h: http://xx77abs.pastebin.com/b9tVV0AV output.cpp: http://xx77abs.pastebin.com/5QwtZRXc
そしてもちろん、超大きなエラー :D
http://xx77abs.pastebin.com/8mAGWn47
EDIT:あなたが不思議に思っているのは、私は名前空間を使用していないということです...