2011-12-24 19 views
0

私はこの本の演習で練習してC++を学ぼうとしていますが、私はさらに別の問題に遭遇したようです。私は、ostream_withassignクラスがiostreamライブラリにあり、それが含まれていることを知っていますが、私は自分のコードでまだ見当たりません。私はstdを試みたが、それはどちらかのように動作していないようだ。私が逃しているものを私に知らせてくれる人は、どうぞ宜しくお願い致します。前もって感謝します!エラーC2504: 'ostream_withassign':基本クラスが定義されていません

#include "stdafx.h" 
#include "Conios.h" 


class ConsoleStream :public ostream_withassign, public Conios 
{ 
protected: 
    char X; 
    char Y; 


public: 
    ConsoleStream(void); 
    ConsoleStream(std::streambuf * Buffer); 
    void SetX(char XX); 
    void SetY(char YY); 
    ConsoleStream &operator =(std::ostream &Out); 
    ~ConsoleStream(void); 
}; 
+1

'ostream_withassign'はC++標準ライブラリに含まれているクラスではありません。また、正確なエラーメッセージは何ですか? – Xeo

+0

この問題は、C++ 03では割り当てが無効になっていたが、C++ 11では( 'std :: move'を介して)有効になっていたので、皮肉なことに時間がかかるかもしれません。しかし、私は 'ostream'デリバティブが' streambuf'をどのようにとり、その出力をX、Y座標に置くことができるのだろうかと思います。これは、 'ostream'ではなく' streambuf'の派生を必要とする可能性が高くなります。 – Potatoswatter

+0

エラーC2504: 'ostream_withassign':基本クラスが定義されていません – Kobojunkie

答えて

2

あなたの本は非常に古いものでなければなりません。 ostream_withassignクラスは、 "iostream.h" back in Visual Studio 6.0で利用可能な非標準型でした。おそらく、あなたの参照資料を更新し、もっと近代的な何かを使ってください。それ以来、C++で多くのことが変更されています(1998年)。 (最新の更新はstandardized this yearでした)

+0

リビジョンにこの特定のクラスが置き換えられていますか?それとも、私はまだ古い図書館を利用できるのでしょうか? – Kobojunkie

+0

@Kobo:古い図書館の最大の利点は、それを置き換えることです。いいえ、本当に。 – Xeo

+0

私はそれを置き換えることができるかどうかはわかりません。私はC++を学ぶために本の演習に従おうとしています – Kobojunkie

関連する問題