restricción sobre el modo de captura predeterminado y 'esto' en C ++ lambda-expresión
Me pregunto porque=
captura por defecto el modo prohíbethis
enlista de captura de C ++expresión lambda.
Es decir,
[=, this]{ }; // error
[&, this]{ }; // OK
Esto se especifica en C ++ 11 5.1.2 / 8.
Si una captura lambda incluye una captura predeterminada que es &, los identificadores en la captura lambda no deben ir precedidos por &.Si una captura lambda incluye una captura por defecto que es =, la captura lambda no contendrá esto y cada identificador que contenga deberá ir precedido por &.P: ¿Hay alguna razón o historia de fondo para esta regla?