問題タブ [result-of]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1729 参照

c++11 - 「std::result_of」に「type」という名前の型がありません。関数のオーバーロードから戻り値の型を取得する

typeオーバーロードされた関数test()vsの戻り値を取得する方法を学習していますtest(double)

SO answer (by chris)からコードを変更しました。

コンパイルエラーになりました。

エラー: 'std::result_of' に 'type' という名前の型がありません

私が理解しているように:-

  • TestType<...>「バリアディックテンプレート」です。
    私自身の言葉で言えば、任意の量のパラメーターを持つパックされた略語のように機能します。

  • 関数 のIDTestType<double>です。test(double)

  • std::result_of<TestType<double>>::typeの戻り型ですtest(double)
    doubleDatする必要がありますdouble

質問:コンパイルできないのはなぜですか? それを解決する方法は?

私はこれらを読みました:-

手がかり:長い検索の後、コードが「最も厄介な解析」に苦しんでいるというかすかな匂いがします。

0 投票する
3 に答える
4660 参照

c++ - C++17 で「std::result_of」が非推奨になった理由は何ですか?

std::result_ofC++17 では非推奨になっているの を見ました。

  • std::result_ofC++17 で非推奨になった理由は何ですか?
  • また、 と の違いを知りたいstd::result_ofですstd::invoke_result