这是正确的C++ 0x代码吗?

has*_*svn 9 c++ lambda c++11

在GCC 4.6中尝试了它并编译和链接,但在MacOS上运行时发出"总线错误"消息.VS2010甚至没有编译它.

但问题是,这应该在标准C++ 0x中实际工作吗?

#include <cstdio>
int (*main)()=[]()->int{printf("HEY!\n");return 0;};
Run Code Online (Sandbox Code Playgroud)

是的,它试图将"main"定义为lambda函数.

ava*_*kar 14

这不是一个有效的C++程序,因为符号main未定义为函数,而是指向函数的指针.这就是你得到分段错误的原因 - 运行时试图执行指针.