为什么这个简单的代码会出现语法错误?
Why this simple code is giving syntax error?
#include <iostream>
using namespace std;
void fun(int i)
{
cout<<"Called with int "<<i;
}
void main()
{
using df = decltype(&fun);
}
我在 Visual Studio 中遇到以下语法错误,
Error 1 error C2143: syntax error : missing ';' before '=' c:\users\kpranit\documents\visual studio 2012\projects\sample\sample\sample.cpp 12
Error 2 error C2873: 'df' : symbol cannot be used in a using-declaration c:\users\kpranit\documents\visual studio 2012\projects\sample\sample\sample.cpp 12
Visual Studio 2012,根据您的项目目录,是您正在使用的目录,不支持类型别名。
这是一个 C++11 特性,没有出现在 MSDN documentation, even for VS2013, though I think that may just be a doc error on their part - the Microsoft site for C++11 compatibility(查找 "alias templates")列表中,它在 VS2013 下可用。
因此,如果您想使用该功能,您可能必须升级到更高版本的编译器。
#include <iostream>
using namespace std;
void fun(int i)
{
cout<<"Called with int "<<i;
}
void main()
{
using df = decltype(&fun);
}
我在 Visual Studio 中遇到以下语法错误,
Error 1 error C2143: syntax error : missing ';' before '=' c:\users\kpranit\documents\visual studio 2012\projects\sample\sample\sample.cpp 12
Error 2 error C2873: 'df' : symbol cannot be used in a using-declaration c:\users\kpranit\documents\visual studio 2012\projects\sample\sample\sample.cpp 12
Visual Studio 2012,根据您的项目目录,是您正在使用的目录,不支持类型别名。
这是一个 C++11 特性,没有出现在 MSDN documentation, even for VS2013, though I think that may just be a doc error on their part - the Microsoft site for C++11 compatibility(查找 "alias templates")列表中,它在 VS2013 下可用。
因此,如果您想使用该功能,您可能必须升级到更高版本的编译器。