ふらっと C#,C♯,C#(初心者用) Part143

■ このスレッドは過去ログ倉庫に格納されています
2019/05/16(木) 19:28:06.27ID:s+6oZKe00
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)

「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■関連スレ
C#, C♯, C#相談室 Part93
http://mevius.5ch.net/test/read.cgi/tech/1492818720/
■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/
■前スレ
ふらっと C#,C♯,C#(初心者用) Part142
https://mevius.5ch.net/test/read.cgi/tech/1551908141/

■情報源
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/
-
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
2019/05/27(月) 15:50:03.21ID:akjP+mMa0
githubで他人のコードを見て勉強しているのですが、

Action OnInit { get;set;}
というプロパティに対して

OnInit?.Invoke();
というコードは何をしているのでしょうか?
2019/05/27(月) 16:02:02.29ID:gRTKnRKQ0
if ( OnInit != null )
{
 OnInit();
}
2019/05/27(月) 16:48:18.03ID:akjP+mMa0
>>111
ありがとうございます、C#6からの機能なんですね、新しい書き方についていかなければ。
113デフォルトの名無しさん (ブーイモ MMcb-WFXE)
垢版 |
2019/05/27(月) 19:42:02.15ID:at7F4ASBM
>>112
単純に短く書けるってだけじゃ無いからな。
>>111だとマルチスレッド時に1つ目の{でスレッドが切り替わって
OnInitにnullがセットされてしまう可能性があるが
Invokeにはそれが無い
114デフォルトの名無しさん (オッペケ Sr5b-ySD8)
垢版 |
2019/05/27(月) 19:54:29.22ID:jyj66Likr
>>113
Invokeにじゃなくて?. の仕様な
■ このスレッドは過去ログ倉庫に格納されています