这或多或少是从 boost docs 粘贴的副本,我不断收到错误(实际上有很多错误)
我试图确保模板类仅与使用 boost 的数字一起使用。这是一个 boost 练习,而不是制作一个只使用数字的模板类。
#include <boost/utility/enable_if.hpp>
#include <boost/type_traits/is_arithmetic.hpp>
using namespace boost;
template <class T>
class A<T, typename enable_if<is_arithmetic<T> >::type> // <-- this is line 9
{
int foo;
};
int main() {
return 0;
}
前几个错误 C2143:语法错误:缺少 ';' 在“<”之前:第 9 行 C2059:语法错误:“<”:第 9 行 C2899:类型名不能在模板声明之外使用
顺便说一句,Visual Studio 2005。