Die lokale vordefinierte C++ 11 -Variable einer Funktion kompiliert nicht in Visual Studio 2012 Professional (mit Update 1 installiert) mit dem standardmäßig integrierten Visual Studio 2012 (v110) Compiler oder der November 2012 CTP (v120_CTP_Nov2012) Compiler. Der Redakteur beschwert sich jedoch nicht mit roter Unterstreichung unter __func__
. __func__
soll den Namen seines enthalten Funktion, in diesem Fall foo
, aber dies weder kompiliert noch machen den Editor geben beschweren:__func__ C++ Die lokale vordefinierte Variable der Funktion 11 wird nicht kompiliert
#include <iostream>
using namespace std;
void foo()
{
cout << __func__ << endl;
return;
}
int main()
{
foo();
return 0;
}
Es gibt dem Compiler-Fehler:
error C2065: '__func__' : undeclared identifier
Bin ich fehlt etwas in meinem Code oder wird dies in einem zukünftigen Update funktionieren?
[hier] (http://blogs.msdn.com/b/vcblog/archive/2011/09/12/10209291.aspx?PageIndex=11) Es sagt, dass die Unterstützung "teilweise" ist. Nicht sicher, was damit gemeint ist. –
"Der Redakteur beschwert sich jedoch nicht mit roter Unterstreichung unter" __func__ "." - * Verlass dich nie auf rote Schnörkel, um dir zu sagen, ob dein Code kompiliert wird oder nicht. IntelliSense und das eigentliche Compiler-Frontend werden von verschiedenen Personen entwickelt. Im Zweifelsfall ist der Compiler korrekt, da dies Ihre Binärdateien erzeugt. – Xeo