[this](T* t) {pool_.push_back(std::unique_ptr(t));}如何解读

micklexqg 2015-12-02 05:58:24
std::unique_ptr<T, DeleterType> ptr( pool_.back().release(), [this](T* t)
{pool_.push_back(std::unique_ptr<T>(t));} );
这句代码如何解读,为什么一句代码里会有两个分号,
[this](T* t) {pool_.push_back(std::unique_ptr<T>(t));}这个表示什么意思
求大神指点!
...全文
217 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
micklexqg 2015-12-16
  • 打赏
  • 举报
回复
引用 7 楼 ri_aje 的回复:
[quote=引用 5 楼 micklexqg 的回复:] [quote=引用 4 楼 ri_aje 的回复:] lambda 表达式,指针用完了以后放回 pool 中即可,不用 delete。
lambda 表达式不是要求要有返回吗,但是这个lambda 表达式的函数体不是执行了一个push_back吗,没返回啊,[/quote] 谁说的?没这要求[/quote]谢谢
micklexqg 2015-12-16
  • 打赏
  • 举报
回复
引用 6 楼 paschen 的回复:
[quote=引用 5 楼 micklexqg 的回复:] [quote=引用 4 楼 ri_aje 的回复:] lambda 表达式,指针用完了以后放回 pool 中即可,不用 delete。
lambda 表达式不是要求要有返回吗,但是这个lambda 表达式的函数体不是执行了一个push_back吗,没返回啊,[/quote] lambda 表达式也可以没返回值! [/quote]没用过lambda,确实不了解
ri_aje 2015-12-04
  • 打赏
  • 举报
回复
引用 5 楼 micklexqg 的回复:
[quote=引用 4 楼 ri_aje 的回复:] lambda 表达式,指针用完了以后放回 pool 中即可,不用 delete。
lambda 表达式不是要求要有返回吗,但是这个lambda 表达式的函数体不是执行了一个push_back吗,没返回啊,[/quote] 谁说的?没这要求
paschen 版主 2015-12-04
  • 打赏
  • 举报
回复
引用 5 楼 micklexqg 的回复:
[quote=引用 4 楼 ri_aje 的回复:] lambda 表达式,指针用完了以后放回 pool 中即可,不用 delete。
lambda 表达式不是要求要有返回吗,但是这个lambda 表达式的函数体不是执行了一个push_back吗,没返回啊,[/quote] lambda 表达式也可以没返回值!
micklexqg 2015-12-04
  • 打赏
  • 举报
回复
引用 4 楼 ri_aje 的回复:
lambda 表达式,指针用完了以后放回 pool 中即可,不用 delete。
lambda 表达式不是要求要有返回吗,但是这个lambda 表达式的函数体不是执行了一个push_back吗,没返回啊,
ri_aje 2015-12-04
  • 打赏
  • 举报
回复
lambda 表达式,指针用完了以后放回 pool 中即可,不用 delete。
weilin.jiang 2015-12-03
  • 打赏
  • 举报
回复
micklexqg 2015-12-03
  • 打赏
  • 举报
回复
引用 1 楼 fefe82 的回复:
请搜索 lambda 表达式
好的,谢谢!
fefe82 2015-12-02
  • 打赏
  • 举报
回复
请搜索 lambda 表达式

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧