Lamda表达式使用[&],可以访问外部的变量。
实例如下:
uh::scope_guard scopeGuardGetInfo([&]() {
std::vector<long> vecInt{};
for(long index = 0L; index <= ; ++index)
{
vecInt.emplace_back(index);
auto itr = m_mapInfo.find(index);
if( itr != m_mapInfo.end() )
m_mapInfo.erase(itr);
}
});
其中:
m_mapInfo是该【Lamda表达式】定义外的变量。
本文深入探讨了Lambda表达式在C++中的使用,特别是在通过引用访问外部变量时的特性。通过具体示例,展示了如何在作用域守卫中利用Lambda表达式来操作外部变量,如std::vector和map类型。

被折叠的 条评论
为什么被折叠?



