私は両方を宣言しました
class myclass
{
private:
stringbuf* mbuf;
iostream* mios;
};
私のクラスの .h ヘッダーファイルで。ただし、コンストラクターでそれらを次のように初期化しようとすると:
myclass::myclass()
{
mbuf = new stringbuf();
mios = new iostream(mbuf);
}
次の行に沿ってエラーをスローします。
invalid use of incomplete type 'std::stringbuf'
そしてもちろん、iostreamはstringbufを使用できないと不平を言います