問題タブ [enable-if]

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 に答える
897 参照

c++ - enable_if<>::type 戻り値の型を持つ関数をどのようにプロトタイプ化しますか?

以下に3つのプロトタイプがあります。最初のもの (コメントアウト) が機能することを期待していましたが、機能しないのはこれだけです (エラーについては、コード内のコメントを参照してください)。私にとってさらに驚くべきことは、両方が存在する場合でも、次の 2 つのいずれかが機能することです。

正しいプロトタイプはどれですか?最初のプロトタイプが機能しないのはなぜですか? 私はVS2010とVS2012を使用しています

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

javascript - KnockoutJS:アレイ有効化ボタンの長さに基づく

私たちが行っているプロジェクトでは、ユーザーが(とりわけ)アイテムを選択できる受信トレイを作成しました。ユーザーがアイテムを選択した場合、ボタンを有効にする必要があります。何も選択されていない場合、ボタンを無効にする必要があります。

十分に単純ですが、私の人生のために、私はそれを機能させることができません:-(

ここでフィドルを見つけることができます:http://jsfiddle.net/rzrfp/

私は非常に、非常に、非常に単純で愚かな何かが欠けていると思いますが、私は事実上すべてを試しました、そしてそれを動かすことができません...

0 投票する
4 に答える
223 参照

haskell - Haskell の「enable_if」

Haskellで次のようなものを書くにはどうすればよいですか:

基本的には、C++のboost::enable_ifのようなものです。

GHC 拡張機能は問題ありません。

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

c++ - デフォルトのテンプレートパラメータとしてenable_ifイテレータ?

私はそのようなコンストラクターを持っています:

このコンストラクターを有効にするのは、TIがイテレーターである場合のみです(つまり、TIにはiterator_categoryがあると思います)。(宣言と定義で)デフォルトのテンプレートパラメータとしてenable_ifを使用してC ++ 2011でそれを行う方法は?

どうもありがとうございます。

0 投票する
2 に答える
2046 参照

c++ - テンプレートメソッドenable_if特殊化

コンパイルされない次のコードがあります。これは、引数を取るテンプレートクラスの2つの関数です

Retのタイプに応じて、メンバーメソッドに特化したいと思います。

誰かアイデアはありますか?

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

inheritance - 基本クラスのみを許可する enable_if

template<class CRTP> Base現在、基本クラスと派生クラスDerived1 : public Base<Derived1>を使用してCRTPを実装していDerived2 : public Base<Derived2>ます...

算術演算子は で定義されており、 a に a を追加できますが、 aに a を追加できないことを意味するBaseタイプです。CRTP Base<CRTP>::operator+(const CRTP& rhs)Derived1Derived1Derived2Derived1

さらに、 を返すBase<CRTP>& Base<CRTP>::operator()()ことを意味する演算子を定義しました。Derived1()Base<Derived1>&

次のことを行う解決策があるかどうか疑問に思います:

最後の2行によると:

  • ユーザーのミスを防ぎます
  • しかし、彼が本当にこの操作をしたいのであれば、派生型を基本型に「キャスト」することができ、それは機能します。

これを行う必要があるのは、そのような演算子を定義することだけです:

enable_if では、次のようなものが欲しいです:

  • true: rhs がBaseタイプの場合
  • false: rhs がDerived型の場合

そのようなものは存在しますか?他の解決策を考えていますか?

どうもありがとうございました !

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

c++ - enable_if と has_member の何が間違っていますか?

私はこれをあまりにも長い間見つめていたと思いますが、ここでエラーを見つけることができません:

Visual Studio 2012 レポート:

(注:ここで説明されているように、このテストの新しい C++11 バージョンが非常に気に入ってますが、VS2012 はまだ constexpr をサポートしていません。)

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

c++ - この boost::enable_if コードをコンパイルする方法 (SFINAE)?

を使用する次のコードがコンパイルされない理由がわかりboost::enable_ifません。typeTにメンバー関数があるかどうかを確認し、helloそうであればそれを呼び出します。

私は得ています

gcc 4.4.4

静的アサートは問題has_hello<Foo>::valueありませんtrue。私はboost::enable_if間違って使用していますか?

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

c++ - コンストラクターで enable_if をブーストする

テンプレート化されたクラスがあり、型が double の場合にのみ特定のコンストラクターを有効にしたいと考えています。このコードの何が問題になっていますか?

エラーが表示されます:「タイプ 'boost::enable_if_c' のパラメーターのデフォルト引数のタイプは 'int' です」が、これが何を意味するのかわかりません。

よろしくお願いします。