32

次のコードがあります。

#include <string>
#include <boost/thread/tss.hpp>

static boost::thread_specific_ptr<string> _tssThreadNameSptr;

次のエラーが表示されます

g++ -c -I$BOOST_PATH tssNaming.h

tssNaming.h:7: エラー: 'string' はこのスコープで宣言されていません

しかし、私は私の中に文字列を含めてい#includeます。

4

3 に答える 3

65

名前空間にあるため、使用する必要がstd::stringあります。std

于 2012-09-01T18:12:14.920 に答える
12

stringstd名前空間にあります。次のオプションがあります。

  • インクルードの後に​​書き込みusing namespace std;、すべてのstd名前を有効にします。その後、プログラムにのみ書き込むことができstringます。
  • using std::stringinclude の後に enableを書きstd::stringます : その後、プログラムにのみ書き込むことができstringます。
  • std::stringの代わりに使用string
于 2012-09-01T18:30:07.323 に答える