functor

    0

    1答えて

    オブジェクト型の種類に応じて異なる種類のファンクタの呼び出しを呼び出すプログラムでパターンを使用しています。以下のコードでは、b1オブジェクトは、派生ファンクタタイプFunctorXで明示的にインスタンス化されています。しかし、コード内で呼び出しを行うと、派生ファンクタの代わりに基本ファンクタが呼び出されます。何故ですか? struct Functor { Functor() {}

    -1

    1答えて

    ラムダ関数を作成し、実行する別のスレッドに渡すコードを想像してください(メソッドschedule_task_in_threadFunctorのみパラメータとして)。どのようなことが起こるのでしょうかo? の方法が実行されるまで一時的なコピーが作成されていますか? wait()は、呼び出しがブロックされていることを確認します。 #define INVOKE_IN_MYTHREAD(method_na

    -1

    2答えて

    コールから呼び出さ取得する方法をオーバーロードデータ型:ファンクタCalculateAverageを呼び出すコードの上 double average=std::for_each(values.begin(),values.end(),CalculateAverage()); 、 が、「無効オペレータ()(二重のelem)」の内側から、 "operator double()const"が呼び出さ

    0

    1答えて

    unordered_setのハッシャとして定義可能なファンクタを使用しようとしています。問題は直面していますが、渡されたファンクタを初期化する方法がわかりませんテンプレートパラメータそれはこのようなものでしょう。 class A{ private: class Hasher{ private: int a; public:

    0

    1答えて

    main()がオブジェクトMyAppをインスタンス化し、そのオブジェクトをReadConfig関数に渡すC++アプリケーションがあります。 ReadConfigは、テキストベースのファイルを開き、解析し、適切なMyAppメソッドを呼び出して設定します。 class MyApp { private: public: void SetRate(uint16_t); void

    1

    2答えて

    スカラー値(例えば、整数または文字列)を実際の値または何らかのNA値で表現し、後でそれらを コレクション(例えばリスト)に格納したいとします。目的は、欠損値を処理することです。これを行うには は、私は今、私はScalar Sが含まれて心の中でいくつかの多型Vectorタイプを持って署名 module type Scalar = sig type t type v = Value

    6

    1答えて

    私はそれを逆参照して結果を返す単項ファンクタを探しています。もちろん、私は1つ書くことができます、それはちょうど何かが既に存在するはずのように見えました。 Soはコードを与えられた:私は、私が代わりにラムダを使用することができます数子があったことを期待していた const auto vals = { 0, 1, 2, 3 }; vector<const int*> test(size(vals)

    1

    2答えて

    フレンド関数がクラスのプライベートメンバーにアクセスするのを防ぐ方法を教えてください。私たちはこれをまったく行うことができますか? この質問はインタビューで尋ねられ、彼はそれができると確信して、彼はファンクタ/機能オブジェクトについてのヒントを与えました。これまでは何も考えられません。私は答えがあればそれに興奮しています。

    3

    1答えて

    私はcoqにはかなり新しく、これまで手で証明できるものだけを証明することができました。ですからセレクションモナドを見て、それをインテルで実装しようと思ったとき、それは良いエクササイズになると思ったが、私は立ち往生した。誰かが、選択モナドが応用的でモナドであるという証拠の例をcoqで提供することができますか?ここにfunkのhaskell実装があります。 newtype Sel r a = Sel

    2

    1答えて

    コンテナタイプ([]/{})を使用せずにJavascriptでファンクタを実装しようとしています。したがって、私は単にそれらを構築するために、純粋な高次の機能を利用: const option = x => f => isAssigned(x) ? option(f(x)) : none; const none = option(null); const isAssi