std::transform(std::begin(ov), std::end(ov), std::begin(nv),
[](std::shared_ptr<NEMLObject> const & v)
{
auto res = std::dynamic_pointer_cast<T>(v);
if (res == nullptr) {
throw WrongTypeError();
}
else {
return res;
}
});
uj5u.com熱心網友回復:
是函式transform的第四個引數,名字叫lambdauj5u.com熱心網友回復:
lamba 運算式uj5u.com熱心網友回復:
這是lambda運算式,說明transform的最后一個引數是個函式指標。傳統做法是額外定義一個函式,再用一個函式指標指向該函式,再把函式指標傳給transform函式。
用lambda運算式就可以省略這些中間程序,直接把函式(lambda)傳給transform函式。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/8161.html
標籤:C++ 語言
下一篇:隱藏游標的問題
