Lambda 表达式(lambda expression)是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lambda abstraction),是一个匿名函数,即没有函数名的函数。
// lambda expression [] {};
_____________________________________________________________________________
int main()
{
[] {}; //最简单的Lambda 表达式
return 0;
}
____________________________________________________________________________
#include<iostream>
#include<thread>
using namespace std;
void functionParameters( int (*cmp)(int,int))
{
cmp(10, 23);
}
int main()
{
functionParameters([](int a, int b) {
cout << "在这里比较大小!\n";
return 0;
});
std::thread myThread([]() {
cout << "执行线程代码!\n";
});
myThread.join();
}
运行结果:
class background_task
{
public:
inline void operator()()const
{
do_something();
do_something_else();
}
inline void do_something()const
{
cout << "1\n";
}
inline void do_something_else()const
{
cout << "2\n";
}
};
int main()
{
background_task f;
std::thread myThread(f);
myThread.join();
}