加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

单元测试C 11闭包

发布时间:2020-12-16 03:44:29 所属栏目:百科 来源:网络整理
导读:在C闭包上进行单元测试是否有任何优先权? 我编写的函数通常从在其使用点附近定义的闭包开始,然后(可能)稍后毕业到完整函数.这对于保持接口清洁并使线性方式更容易读取代码非常有用,但它破坏了编写单元测试. 是否有任何技巧或C单元测试框架可以处理,比如,一
在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 */}); 
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读