GoogleMock with VS2012

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
Suikaba
記事: 194
登録日時: 9年前

GoogleMock with VS2012

#1

投稿記事 by Suikaba » 7年前

質問させていただきます。
GoogleMockの環境を整えていたんですが、VisualStudioでビルドすると

コード:

C:\lib\gmock\include\gmock/internal/gmock-generated-internal-utils.h(133): error C2977: 'std::tuple' : テンプレート 引数の数が多すぎます
1>          C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\utility(73) : 'std::tuple' の宣言を確認してください。
1>C:\lib\gmock\include\gmock/internal/gmock-generated-internal-utils.h(133): error C3203: 'tuple' : 非特殊クラス テンプレート は、テンプレート 引数として テンプレート パラメーター 'Tuple' に使用できません。実際の型を指定してください
のようなエラーがでてしまう問題で、
GoogleTestのgtest_port.hに

コード:

#if defined(_MSC_VER) && _MSC_VER == 1700
# ifndef _VARIADIC_MAX
#  define _VARIADIC_MAX 10
# elif _VARIADIC_MAX < 9
#  define GTEST_HAS_TR1_TUPLE 0
# endif
#endif

// ...

#if GTEST_HAS_TR1_TUPLE
# if GTEST_USE_OWN_TR1_TUPLE
//...
# else // ここから
# include <tuple>
#  if defined(_MSC_VER) && _MSC_VER >= 1700
namespace std { namespace tr1 { using std::tuple; } }
#  endif
# endif // ここまで追加
#endif

//...

というコードを追加しました。
するとGoogleTestの方はうまく行ったんですが、Mockのほうが相変わらずのエラーで困っております。
対処法ご存知のかたよろしくお願いします。

Suikaba
記事: 194
登録日時: 9年前

Re: GoogleMock with VS2012

#2

投稿記事 by Suikaba » 7年前

自己解決しました。
ありがとうございました。

閉鎖

“C言語何でも質問掲示板” へ戻る