問題タブ [lambda]
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.
linq - .Select に関する Linq/lambda の質問 (newby learning 3.0)
私はC#3.0の新しいもので遊んでいて、このコード(ほとんどはMSDNから取得)を持っていますが、真、偽、真...しか取得できず、実際の値は取得できません:
整数のリストを表示するように修正するにはどうすればよいですか?
c# - リストの並べ替え降順
c#(3.0または3.5なのでラムダを使用できます)で、日付のリストを降順でソートするエレガントな方法はありますか? 単純な並べ替えを行ってから、すべてを逆にすることができることを知っています。
しかし、それを1ステップ実行するラムダ式はありますか?
上記の例では、StoredDate は DateTime 型のプロパティです。
c# - Lambda 関数をどこで練習しますか?
私は現在、C#3.0 のすべての新機能を学ぼうとしています。LINQ を実践するための非常に優れたサンプルのコレクションを見つけましたが、Lambda に似たものを見つけることができません。
Lambda 関数を練習できる場所はありますか?
アップデート
LINQpad は、Linq を学習し (提案した人にとっては thx)、何らかの式で Lambda を少し使用するのに最適です。しかし、Lambda のより具体的な演習に興味があります。
c#-3.0 - IQueryablevs IEnumerableラムダと、どちらを選ぶ?
私は Lambda でますます多くの演習を行ってい.AsQueryable();
ますが、IQueryable を使用する例を使用する理由と.AsQueryable();
、IEnumerable を省略して使用する理由がわかりません。
私はMSDNを読みましたが、「式ツリーを実行する」ことがどのように利点があるかわかりません。
誰でも私に説明できますか?
vb.net - VB 10 の複数行ラムダについてどう思いますか
Visual Basic 10 のいくつかの新機能について、MSDN チャネル 9 でビデオを見ていました。このビデオは、ここにあり、Visual Basic 10 のいくつかの新機能について説明しています。 、私の目を引いたのは、C# のような複数行のラムダです。
ビデオでは、彼は次のような例を使用しました。
今、私はすべての冗長性においてVBが好きですが、sub...end sub inlineを書くと少し面倒になるのではないかと少し心配しています。 c => {....} のように、多くのコードを切り取ることができます。
VB での複数行のラムダについて、どのように考えていますか?
それらはどこで役立つと思いますか?
lambda - このスキーム評価で何が間違っていますか?
評価:
これは私がしたことです:
評価
((((lambda (x) (lambda (y) (lambda (x) (+ x y)))) 3) 4) 5)
- 評価
5 -> 5
- 評価
評価
(((lambda (x) (lambda (y) (lambda (x) (+ x y)))) 3) 4)
- 評価
4 -> 4
- 評価
評価
((lambda (x) (lambda (y) (lambda (x) (+ x y)))) 3)
- 評価
3 -> 3
- 評価
(lambda (x) (lambda (y) (lambda (x) (+ x y))))
->(lambda (x) (lambda (y) (lambda (x) (+ x y))))
に適用
(lambda (x) (lambda (y) (lambda (x) (+ x y))))
する3
置換
3
->x
で(lambda (y) (lambda (x) (+ x y))
(lambda (y) (lambda (x) (+ 3 y))
評価
(lambda (y) (lambda (x) (+ 3 y)) -> (lambda (y) (lambda (x) (+ 3 y))
apply (lambda (y) (lambda (x) (+ 3 y))
に4
代用
4 -> y
する(lambda (y) (lambda (x) (+ 3 y))
(lambda (y) (+ 3 4))
評価
(lambda (y) (+ 3 4)) -> (lambda (y) (7))
- 置換
5
-> ?
- 置換
そして、私は立ち往生しています。
c# - C# アクション ラムダの制限
このラムダ式がコンパイルされないのはなぜですか?
推測でもかまいませんが、C# 言語仕様やその他のドキュメントを参照していただければ幸いです。
そして、はい、私は以下が有効であり、コンパイルされることを知っています:
このようなものを使用するコンテキストは、このブログ投稿で説明されています。
c++ - STL アルゴリズム、ラムダ、ローカル クラス、およびその他のアプローチへのアプローチ
STL を使用する上で必要と思われることの 1 つは、ローカル関数を指定する方法です。私が通常提供する関数の多くは、STL 関数オブジェクト作成ツール ( bind など) を使用して作成することはできません。関数オブジェクトを手動で作成する必要があります。
C++ 標準では、テンプレートのインスタンス化でローカル型を引数として使用することを禁止しているため、私が使用できた最善の方法は、小さなライブラリを作成することでした (関連する部分を表示するだけです)。
これはいつも私には扱いにくいように思えました。ISO委員会の人々もそう信じて、C++にラムダを追加したと思います。
それまでの間、コンパイラはこの問題にどのように対処したのでしょうか? (特に Windows コンパイラ。)
少し明確になるかもしれない修正。変更ログ: 明確にするために 11 月 2 日を置き換え C++ 標準ではローカル クラスを関数オブジェクトとして禁止しているため
c# - 条件付き三項演算子を使用してラムダ間に条件付きで Func<> を割り当てるにはどうすればよいですか?
通常、条件演算子を使用する場合の構文は次のとおりです。
派手なことは何もなく、かなり簡単です。
では、Lambda を Func 型に割り当てるときにこれを使用してみましょう。説明させてください:
それは同じ構文であり、動作するはずですか? 右?どういうわけかそうではありません。コンパイラは、次のような不可解なメッセージを表示します。
エラー 1 'ラムダ式' と 'ラムダ式' の間に暗黙的な変換がないため、条件式の型を特定できません
次に、構文を変更したところ、次のように機能しました。
なぜ最初の方法でうまくいかないのか不思議です。
(補足: int 値と null を比較するときは、object.Equals を使用するだけであることがわかったため、このコードは不要になりました)
c# - C#3.0 Func/OrderBy型推論
私が今日OrderByで遭遇した非常に奇妙な状況:
それで:
これは問題ありませんが、orderBy以外の場所で使用できる可能性があるため、代わりにメソッドを作成しました。
これをOrderByに接続しようとすると、次のようになります。
Funcを使用した場合のようにタイプを推測することはできません。メソッド自体はFuncのように「強く型付けされている」ので、私には同じである必要があるようです。
補足:私はこれができることを理解しています: