C++ 关于这一点,你能举个例子吗:lambda表达式

C++ 关于这一点,你能举个例子吗:lambda表达式,c++,c++11,lambda,C++,C++11,Lambda,n3290中的一点:ISO标准草案,§5.1.2/9 最小封闭范围为块范围的lambda表达式(3.3.3) 是一个局部lambda表达式;任何其他lambda表达式不得具有 在其lambda介绍人中捕获列表。局部区域的范围 lambda表达式是一组封闭作用域,包括 最里面的封闭函数及其参数。[注:此范围包括任何中间lambda表达式的结束注释] 任何人都可以针对上述观点给出exmaple,特别是:“其他lambda表达式的lambda介绍人中不应有捕获列表。” 这种情况是在哪里出现的?理论上,

n3290中的一点:ISO标准草案,§5.1.2/9

最小封闭范围为块范围的lambda表达式(3.3.3) 是一个局部lambda表达式;任何其他lambda表达式不得具有 在其lambda介绍人中捕获列表。局部区域的范围 lambda表达式是一组封闭作用域,包括 最里面的封闭函数及其参数。[注:此范围包括任何中间lambda表达式的结束注释]

任何人都可以针对上述观点给出exmaple,特别是:“其他lambda表达式的lambda介绍人中不应有捕获列表。”
这种情况是在哪里出现的?

理论上,这种情况应该出现在命名空间范围内,如@Space\u C0wb0y所示

#包括
int x=12;
自动l=[&x](){return x;};
int main(){

很奇怪。据我所知,这一段不应该起作用,但它确实起作用了。
#include <iostream>

int x = 12;
auto l = [&x](){ return x; };

int main() {
    std::cout << l() << std::endl;
}