functor

    4熱度

    2回答

    我想知道使用完美轉發仿函數的正確方法是什麼?這裏有兩個代碼片段。哪一個是最好的,如果兩者都不是,最好的形式是什麼? template<typename T, typename... Args> void callMe(T&& func, Args&&... args) { func(std::forward<Args>(args)...); } 或者 template<typen

    1熱度

    1回答

    我正在用Functors和QuickCheck做運動。 我有一個超級簡單的函數,其組成法我希望quickCheck。 該Functor只是一個Identity a。 這是我的代碼至今: import Data.Functor import Test.QuickCheck newtype Identity a = Identity a instance (Eq a) => Eq (Iden

    1熱度

    2回答

    這是我從http://www.catonmat.net/blog/on-functors/複製的函子代碼。 #include <algorithm> #include <iostream> #include <list> class EvenOddFunctor { int even_; int odd_; public: EvenOddFunctor()

    2熱度

    1回答

    (聲明:我相當肯定,這是不以任何方式慣用如果OCaml中一些替代樹遍歷成語,我所有的耳朵:))。 我在OCaml中編寫了一個玩具編譯器,我想爲我的大型語法樹類型設置一個訪問者。我寫了一個使用類,但我認爲嘗試和使用模塊/函子實現一個會很有趣。我的類型層次結構非常龐大,所以讓我說明我正在嘗試做什麼。 考慮以下類型定義(做這些了當場): type expr = SNum of int

    -3熱度

    1回答

    構造請問可不可以幫我傳遞一個仿函數,如: struct BFunc { double operator()(const double x, const double y, const double z){ return 0.1; } }; 到一類的構造函數: class foo { int n; public: foo(); foo(in

    11熱度

    3回答

    Monads從Functor typeclass得到fmap。爲什麼共同體不需要在Cofunctor類中定義的cofmap方法?

    0熱度

    2回答

    我想做一個優先級隊列,其中最頂部的元素包含最小的整數。我做了一個比較功能對象。一切都很順利,但是,每當我試圖打印出最上面的元素std::cout<<pq.top<<std::endl我得到一個錯誤,指出: candidate function not viable: no known conversion from 'const value_type' (aka 'const Foo') to

    3熱度

    1回答

    我想要定義一個具有兩個參數的類型i和m。我想專門研究這個類型,修復兩個固定m參數的特定實例。目前,我有如下定義: -- | ZadehMembership: represents a membership value between 0 and 1 with min and max operators newtype ZadehMembership = Z Double deriving (Sh

    -1熱度

    1回答

    我已經編寫了一個應用程序,用於解析命令行並初始化應用程序,但是使用C語言。但所需的應用程序是用C++編寫的。以下代碼片段提取/解析參數並調用相應的函數。 void (* const OptionFuncPtr[])(char *pstr) = { (SetA),(GetB), (SetC), (SetD), (Erase), (FOptions), (GOperations

    3熱度

    1回答

    我想我的問題也可以歸結爲類似 是否有地道的ES6辦法有: array.map(identity) === array? array.filter(i => true) === array? {obj..., attr: obj.attr} === obj? 我知道,它沒有像ES6那樣實現,但是有一些我可能缺少的語法或簡單的幫助函數使這些屬性成爲true而不訴諸於不可變的lib嗎? 我使用Babel