Wednesday, 19 July 2017

lambda - Advanced C++ multiple parentheses

Answer


Answer





I'm reviewing a sample program code and found this line:



auto prerequisite = task([](){});


What is the meaning of those combined parentheses ([](){})




I'm a cpp programmer but do not know advance cpp (c11+) which this Microsoft example is written at. Googling didn't help, and I don't know the name of those operators.


Answer



[](){} is a lambda expression that creates a function object that has non-zero size and does nothing.



This is probably to avoid checking whether prerequisite is valid/exists - it is always valid, but may do nothing.


No comments:

Post a Comment

casting - Why wasn't Tobey Maguire in The Amazing Spider-Man? - Movies & TV

In the Spider-Man franchise, Tobey Maguire is an outstanding performer as a Spider-Man and also reprised his role in the sequels Spider-Man...