gpt4 book ai didi

C++ 函数组合 - Compose 方法优化

转载 作者:太空宇宙 更新时间:2023-11-04 14:05:26 25 4
gpt4 key购买 nike

我已经编写了自己的 compose 方法,该方法适用于 POD 如何优化它以处理复制成本高昂的用户定义类型?

#include <iostream>

template<typename T, typename U, typename V>
std::function<V(T&&)> compose(std::function<V(U)> f, std::function<U(T)> g)
{
std::function<V(T&&)> result = [&](T&& value){
return f(g(value));
};
return result;
}

int main(int argc, const char * argv[])
{

std::function<int(int)> f = [](int v){ return v + 1;};
std::function<int(int)> g = [](int v){ return v + 2;};

std::function<int(int)> h = compose(f, g);

std::cout << "compose(f,g): " << (h(5)) << std::endl;

return 0;
}

布莱尔

最佳答案

答案是boost::call_traits<T> ...

关于C++ 函数组合 - Compose 方法优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17187928/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com