Visual Studio 2010 の tr1 機能を使い始めるにはどうすればよいですか? より具体的なケースでは、std::tr1::function が必要です。#include <tr1/functional>
欠落しているレポートを含めてみまし#include <functional>
たが、問題はありませんが、これを設定すると:
std::tr1::function<void(void)> callback;
私は得る:
1>d:\marmalade\projects\core\src\button.h(21): error C3083: 'tr1': the symbol to the left of a '::' must be a type
1>d:\marmalade\projects\core\src\button.h(21): error C2039: 'function' : is not a member of '_STL'
1>d:\marmalade\projects\core\src\button.h(21): error C2143: syntax error : missing ';' before '<'
1>d:\marmalade\projects\core\src\button.h(21): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>d:\marmalade\projects\core\src\button.h(21): error C2238: unexpected token(s) preceding ';'
ブーストを使用すると問題なく動作しますが、このプロジェクトでは、特定のフレームワークを使用しているため、Visual Studio tr1 バージョンが必要です。
示唆されているように、tr1 をスキップしても同じ結果が返されます。
std::function<void(void)> callback;
1>d:\marmalade\projects\core\src\button.h(20): error C2039: 'function' : is not a member of '_STL'
1>d:\marmalade\projects\core\src\button.h(20): error C2143: syntax error : missing ';' before '<'
1>d:\marmalade\projects\core\src\button.h(20): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>d:\marmalade\projects\core\src\button.h(20): error C2238: unexpected token(s) preceding ';'