单元测试C 11闭包

前端之家收集整理的这篇文章主要介绍了单元测试C 11闭包前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在C闭包上进行单元测试是否有任何优先权?

我编写的函数通常从在其使用点附近定义的闭包开始,然后(可能)稍后毕业到完整函数.这对于保持接口清洁并使线性方式更容易读取代码非常有用,但它破坏了编写单元测试.

是否有任何技巧或C单元测试框架可以处理,比如,一些小函数来计算在main()中定义为闭包的几何几何?

解决方法

我认为你应该测试函数,而不是lambda函数.如果函数包含lambda函数,那么它们就是实现细节.如果您通过将lambda函数创建为变量来重用它们,那么这些函数很容易作为函数进行单元测试.

例如.

auto lambda = [](/* params */){/* stuff */}; // this can be unit tested

void func() // this can be unit tested
{
    // the lambda is an implementation detail of the function
    sort(/* stuff */,[](/* params */){/* stuff */}); 
}

猜你在找的C&C++相关文章