读书人

C++ lambda 种成员变量

发布时间: 2013-02-24 17:58:56 作者: rapoo

C++ lambda 类成员变量
有一个类的成员函数,需要用到循环。

class B;

class A
{

public:
void Print()
{
do
{
B b;
if(!b.check())
{
break;
}
}while(true)
}

}


这里
do
{
B b;
if(!b.check())
{
break;
}
}while(true)
每次要多检查个while里的true。
其实,完全可以把
B b;
if(!b.check())
{
break;
}
这段代码写成一个函数,比如叫

bool NoName()
{
B b;
return b.check();
}
while(NoName())
{}


但是,这么短一段代码,我不想单独写个函数,所以我想到了lambda表达式。但是我写了一下,说是类A的成员变量没有定义,请问这个要怎么写?
[解决办法]
lambda
while([]{
B b;
return b.check();
})
{

}

读书人网 >C++

热点推荐