c++ well-formed
这里用一个lambda来作为shared ptr的删除器,lambda没有做任何操作,保证这份数据的内存管理不受这个sharedptr影响。
编译器报错:static assertion failed due to requirement ***deleter expression is well-formed
所以lambda删除器接受的参数必须是sharedptr管理的对象类型。不过加上了noexcept
不是必须的,不过显然这个删除器不会抛出异常,可以让编译器执行某些优化。
本文来自博客园,作者:ijpq,转载请注明原文链接:https://www.cnblogs.com/ijpq/p/17110954.html