2011-12-24 25 views
0

私は本のサンプルコードを手に入れようとしていますので、これまでのヘッダーファイルで何が間違っているのかよくわかりません。エラーC2504: 'ios':基本クラスが定義されていません

次のエラーメッセージが表示されます。

エラー2エラーC2061:構文エラー:識別子 'ストリームバッファ'
エラー1つのエラーC2504: 'IOS':基本クラス未定義
エラー5のIntelliSense:識別子 "ストリームバッファ" が未定義である

// StdAfx.h HEADER FILE 
************************** 
// stdafx.h : include file for standard system include files, 
// or project specific include files that are used frequently, but 
// are changed infrequently 
// 

#pragma once 
#include <iostream> 
#include <strstream> 
#include <iomanip> 
#include <ios> 
#include <stdio.h> 
#include <tchar.h> 
#include "targetver.h" 


// Conios HEADER FILE 
************************** 

#include "Stdafx.h" 



class Conios :virtual public ios{ 
protected: 
public: 

    Conios(void); 
    ~Conios(void); 
    Conios(streambuf* Buffer); 
}; 

答えて

5

iosstd -namespaceにあります。したがって、を使用するか、iosの代わりにstd::iosに拡張してください。

あなたはuse namespaceを使用している場合は、*.cppまたは*.cxxのように、あなたの実装ファイルでそれを使用ない書き込みuse namespace ...あなたのヘッダファイルを実行する - これまで!

streambufについても同様です。

+0

それがうまくいった!ありがとう。 – Kobojunkie

+1

彼に 'use namespace std; 'を使うよう助言するのは、本当に悪いアドバイスです。より良いアドバイスは、**これまでこれを使用していない**と言っているでしょう。 – Nawaz

+1

@Nawaz:そうです、私は答えにそれを加えました(しかし、実装ファイルで 'use namespace'を使うのは受け入れられますか?)。 – vstm

関連する問題