#ifndef C_H
#define C_H
#include <memory>
class C
{
public:
C(){};
~C() {};
};
typedef auto_ptr<C> CPtr;
#endif
上記のコードは問題ないように思えますが、VC10 でコンパイルすると、次のエラーが発生しました。'<'" の前。それについてのアイデアは大歓迎です。
#ifndef C_H
#define C_H
#include <memory>
class C
{
public:
C(){};
~C() {};
};
typedef auto_ptr<C> CPtr;
#endif
上記のコードは問題ないように思えますが、VC10 でコンパイルすると、次のエラーが発生しました。'<'" の前。それについてのアイデアは大歓迎です。
#include <memory>
auto_ptr
-namespaceであなたを与えるstd
ので、あなたを次のものに置き換えることでこれをコンパイルすることができますtypedef
:
typedef std::auto_ptr<C> CPtr;
または、ヘッダーでこれを行うべきではありませんがauto_ptr
、ステートメントを使用して現在の名前空間に導入することもできます。これを行うには、 orusing
のようなステートメントを追加する必要があります。using std::auto_ptr;
using namespace std;