■前スレ
ふらっと C#,C♯,C#(初心者用) Part147
http://mevius.5ch.net/test/read.cgi/tech/1582100741/
■関連スレ
C#, C♯, C#相談室 Part94
http://mevius.5ch.net/test/read.cgi/tech/1553075856/
■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/
■情報源
https://docs.microsoft.com/ja-jp/dotnet/standard/class-libraries
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/index
https://docs.microsoft.com/en-us/dotnet/standard/class-libraries
http://referencesource.microsoft.com/
・Insider.NET > .NET TIPS - @IT
https://www.atmarkit.co.jp/ait/subtop/features/dotnet/dotnettips_index.html
・DOBON.NET .NET Tips
https://dobon.net/vb/dotnet/index.html
ふらっと C#,C♯,C#(初心者用) Part148
■ このスレッドは過去ログ倉庫に格納されています
1ななC ◆jPpg5.obl6
2020/05/27(水) 10:14:39.92ID:wHIUQvvs443デフォルトの名無しさん
2020/07/07(火) 22:09:21.93ID:Qy5BOzav >>442
デリゲートは参照型だからなのでは
デリゲートは参照型だからなのでは
444デフォルトの名無しさん
2020/07/07(火) 22:32:42.82ID:wq2UphxJ ラムダ式を2個書いてるから、それぞれ別のオブジェクト
それを比較してるから同じではない
その比較はデリゲート同士の比較なんだが、もしかして整数同士の比較だと思ってる?
それを比較してるから同じではない
その比較はデリゲート同士の比較なんだが、もしかして整数同士の比較だと思ってる?
445デフォルトの名無しさん
2020/07/07(火) 22:35:09.13ID:auzHn+nI ラムダ式が同じ式でも別メソッドにコンパイルされてるからfalseになってる
int twice(int x) => x * 2;
Func<int, int> a = new Func<int, int>(twice);
Func<int, int> b = new Func<int, int>(twice);
var flg = a == b; // これなら同じメソッドだからtrue
Func<int, int> a = p => p * 2;
Func<int, int> b = p => p * 2;
はこんな感じになる
class __c {
public static readonly __c __instance = new __c();
public int __1(int p) => p * 2;
public int __2(int p) => p * 2;
}
Func<int, int> a = new Func<int, int>(__c.__instance.__1);
Func<int, int> b = new Func<int, int>(__c.__instance.__2);
var flg = a == b; // __1と__2で別メソッドなのでfalse
int twice(int x) => x * 2;
Func<int, int> a = new Func<int, int>(twice);
Func<int, int> b = new Func<int, int>(twice);
var flg = a == b; // これなら同じメソッドだからtrue
Func<int, int> a = p => p * 2;
Func<int, int> b = p => p * 2;
はこんな感じになる
class __c {
public static readonly __c __instance = new __c();
public int __1(int p) => p * 2;
public int __2(int p) => p * 2;
}
Func<int, int> a = new Func<int, int>(__c.__instance.__1);
Func<int, int> b = new Func<int, int>(__c.__instance.__2);
var flg = a == b; // __1と__2で別メソッドなのでfalse
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【京都】赤いポルシェが市営バスと正面衝突…バス乗客の女性が負傷 ポルシェを運転の24歳男を逮捕 酒気帯び運転などの容疑 [シャチ★]
- 【大阪・関西万博】万博会場の西ゲート付近で「メタンガスが漏れている」消防が出動 基準値を下回るガスを検出 ケガ人なし [ぐれ★]
- 神奈川県警に「救えた命ではなかったか」報ステ大越健介キャスター 川崎遺体遺棄で対応疑問視 [少考さん★]
- 「ランチに行ってきます」→そのまま退職も!中堅社員困惑の「すぐに辞めてしまう新人」調査 [少考さん★]
- 年金だけじゃ暮らせない パートに深夜バイトで体は悲鳴…60代シングル女性の絶望「枠から外れた私は死んでもいいと思われているみたい」 [ぐれ★]
- ブラジル人研究者「日本はとても安全な国。だから私はここに移住したい」 翌日、千葉県でスリランカ人に殺される ★2 [お断り★]
- 血税80億円投入の夢の電池開発会社が破産 [245325974]
- 🏡
- 【実況】博衣こよりのえちえち星のカービィ64 100%耐久🧪★3
- ネトウヨ、未だに夫婦別姓がなぜだめなのか説明できないwww [244219136]
- 「麻雀の欠陥ルール」リーチ宣言牌をロンされるとめちゃいらつく!リーチ宣言牌をロンされないルールだったら面白かったのに [677076729]
- 大阪万博、大敗北が決定する。協会はGWに1日あたり17万人の来場を想定していた [931948549]