functor

    0热度

    1回答

    我试图为一个函子定义一个参数的默认值。但我得到这个错误: 注:候选模板忽略:无法推断出模板参数 “比较” 这是我的函数的定义:我想知道,如果 template <typename RAIterator, typename Comp> void somefunction(RAIterator beg, RAIterator end, Comp comp= [](const typename it

    -4热度

    2回答

    能否请您解释一下与例如 语句1下面的语句 普通功能有不同的类型,只有当他们的签名。但是,当功能对象的签名相同时,它们可以有不同的类型 。实际上,由函数对象定义的每个函数行为都有其自己的类型。这是一个显著 改进使用模板泛型编程,因为你可以通过 功能行为作为模板参数

    2热度

    1回答

    是否有可能构造一个函数来映射任意元组单元的元组? 例如, f :: (m a -> m [a]) -> (m x, m y) -> (m [x], m [y]) (但对于任意的元数)。 This similar question,有许多有希望的建议;例如镜头'each或over both,但每个似乎都需要一个同质类型的元组:我想使用具有不同内部类型的同质单子元组。

    4热度

    1回答

    我承认这个问题有点不明确,但我想知道为什么我从来没有偶然发现过Haskell中函子monique的类型类。我是否错过了它,这种缺席是否有充分理由,还是完全是由于历史原因?恕我直言,下面的继承图看起来有点古怪没有右上角:“这是什么从Functor箭头的真正含义是” Functor | V Applicative ––> Alternative | |

    0热度

    1回答

    我很确定我想要做的事可能是不可能的,也不是一个好主意。尽管如此,在这里。 我想找到一种将任何类的任何方法转换为一个函数的通用方法,该方法将类的实例和方法的参数作为参数,并使用指定的参数调用实例上的方法基本上方法调用在一个低级别的工作原理:对象实例是由编译器堆栈帧推隐藏参数) 实施例: 鉴于 class A { def foo(param1: Type1): TypeN } 我想有是这样的: d

    3热度

    2回答

    我在看下面的函数: fmap :: (a -> b) -> f a -> f b ,我想明白了“F”,如在(f a或f b)。我正在阅读的文章将其描述为一个“盒子”,但它的实际正确名称是什么?它只是一个类型变量?我觉得我很困惑,并认为它是一个功能应用程序 - 这是正确的?

    1热度

    1回答

    我有下面的代码行: fmap (*2) (*11) 3 我想了解我的仿函数是在这个例子里,因为当我检查的类型我得到这个: Prelude> :t fmap (*2) (*11) 3 fmap (*2) (*11) 3 :: Num b => b 和我在那里没有看到任何类似于仿函数的东西。如果我做了部分应用程序(是什么去掉3叫什么名字?)我得到以下几点: Prelude> :t fmap

    7热度

    3回答

    我试图实现Monad实例。作为一个更简单的例子,假设如下: data Maybee a = Notheeng | Juust a instance Monad Maybee where return x = Juust x Notheeng >>= f = Notheeng Juust x >>= f = f x fail _ = Notheeng

    1热度

    1回答

    我有我的结构: struct S{ int a; }; ,我有类: class Other{ //some fields }; 我需要写仿函数: struct Comparator { bool operator()(S& l, S& r) { //some code, considered l,r and any object of clas

    5热度

    1回答

    我尝试实现多态函子对象(纯粹的抽象基类和子类)仅用于理解目的。我的目标是创建许多基类的对象,它们使用纯虚函数的不同实现。 当我创建基类的指针并将其设置为等于新的子类时,我无法将该对象作为函数调用。错误是: main.cpp:29:7: error: ‘a’ cannot be used as a function 下面是代码: #include <iostream> class foo{