main.cpp:
#include<stdio.h> #include<functional> #include<unistd.h> std::function<void()> myFun; int main(){ printf("start...\n"); //创建一个函数,并把此函数地址保存到myFun变量 myFun = [&] { int i=0; for(;;){ if(i>30){ return; //函数返回 } printf("key=%d\n", i++); usleep(1000*200); } }; printf("before call\n"); myFun(); //调用匿名函数 printf("after call\n"); return 0; }
编译:
g++ main.cpp
运行效果:
完。