Jedną opcją jest ponowne włączenie TR1; zrób to, definiując makro _HAS_TR1_NAMESPACE
, jak krótko wspomniano w this blog article. Jeśli korzystasz z projektu MSBuild, najlepiej zrobić to za pomocą ustawienia twojego projektu: Preprocessor Definitions; lub jeśli używasz prekompilowanego nagłówka, definiując go na górze wspomnianego PCH.
Lepszą opcją jest poinformowanie GTest, że twój kompilator obsługuje C++ 11 przez zdefiniowanie makra GTEST_LANG_CXX11
do 1
przed dołączeniem jakichkolwiek nagłówków GTest; wówczas będzie używać std::tuple
zamiast std::tr1::tuple
*. (GTest's C++11-detection logic jest zorientowany na , który VC++ nie został jeszcze zaktualizowany, mimo że jest w większości zgodny z C++ 11 i C++ 14. Powiedziałbym, że jest to błąd w GTest, ponieważ obsługuje on VC++ w innym miejscu w całej logice konfiguracji.)
* Nie wspominając o innych funkcjach C++ 11, dlatego jest to zdecydowanie lepsza opcja; -]
Dzięki. Wybrałem opcję _HAS_TR1_NAMESPACE i zadziałało. – Dess