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

■ このスレッドは過去ログ倉庫に格納されています
2020/05/27(水) 20:28:41.27ID:Pggemlyq0
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)

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

■前スレ
ふらっと 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
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
781デフォルトの名無しさん (ワッチョイ 9749-R9ZN)
垢版 |
2020/11/30(月) 11:16:43.36ID:o8riI3080
>>780
可読性と認知度は全然違う意味だと思うけど、っていうのは置いといて
>>732とか>>765とかさすがに釣りでしょって思わせるレスがちらほらあるから、喧嘩両成敗はちょっと可哀想な流れ
2020/11/30(月) 11:55:30.78ID:tpJ2df0N0
>>773
ちょっとはググれよ
783デフォルトの名無しさん (アウアウカー Sa2b-u/yY)
垢版 |
2020/11/30(月) 11:58:06.51ID:UK/ABAdxa
認知度と可読性が別物か
職場で宇宙人って呼ばれてそう
2020/11/30(月) 12:11:19.73ID:zbjAWIZjd
>>779
これでええやん
例外が重い?知るかよ
2020/11/30(月) 12:13:44.19ID:lgcZd+iw0
>>782
> ちょっとはググれよ
ブーメラン過ぎる、ってかググっても悪魔の証明はできないぞw
2020/11/30(月) 12:15:09.00ID:0LXXOsdO0
TryGetValueを使うことに拘りすぎててアスペ臭しか感じない
好きにしろと言いながら必死で反論してんのが特にな

多様性を許容するっていうのは>>754みたいなスタンスなんだよ
ここまで言われて「何言ってんのか分かんない」と騒ぎ続けるのは感情で理解を拒んでるだけの地雷君
「そういうの嫌われるからやめよ?」って指摘されてるのに「なんで? 俺が正しいじゃん?」って返すのは馬鹿を通り越した何かだわ
2020/11/30(月) 12:26:00.27ID:tnWbc17e0
こういうレスちんぽバトルやめねぇ?
2020/11/30(月) 12:51:21.50ID:tpJ2df0N0
>>785
MISRAって名前まで分かってるのに?
2020/11/30(月) 12:52:22.17ID:PPubPKASd
いまだに複数リターン禁止なんて言ってる時代錯誤なやつがいるのかよ…
2020/11/30(月) 14:08:46.39ID:lgcZd+iw0
>>788
???
ないことの証明だよ?
悪魔の証明って知らんの?
2020/11/30(月) 14:09:59.63ID:lgcZd+iw0
>>789
だからお前等の知らない世界があるって話
まあC++とかC#だと例外とか使えるからだいぶ緩和されるけど
2020/11/30(月) 14:11:44.42ID:tpJ2df0N0
>>790
まずはあることを示してから
2020/11/30(月) 14:31:16.69ID:zbjAWIZjd
>>791
アセンブラ以外でFalseは即リターンなんてベストプラクティスやん
if elseとか基本ダサいんだよね
2020/11/30(月) 15:11:50.10ID:lgcZd+iw0
>>792
それこそ misra multiple return とかでググればいくらでも出てくるだろw
https://www.viva64.com/en/w/v2506/

>>793
だからそう言うのが非推奨な現場があるというだけの事
個人的には関数の頭でのエラーチェックでエラーだったら即リターンとかよくやってる
2020/11/30(月) 15:27:06.61ID:tpJ2df0N0
>>794
それのどこがC#なんだ?
2020/11/30(月) 16:36:59.20ID:r8rQ87Qr0
関数の出口が、複数ある奴か。
危険だから、MISRA-C の禁止事項

一方、Linux では関数の冒頭で、処理しない場合は、即リターンするとかやってる。
関数の出口に、goto で例外処理をまとめたりとか

MISRA-Cを守らない場合は、逸脱手続きが必要。
トヨタなどは、MISRA-Cで、4/100 しか点数を取れなかったとか聞いたw

MISRA-C研究会にも、トヨタのベテランが加入してるのに
2020/11/30(月) 16:46:43.31ID:dO4rlTbV0
俺社環だけど、これ指摘したらそれは例外処理や自動メモリ管理がないCであって、C#ではそこまで気にする必要ないんじゃね?で終わったな
2020/11/30(月) 16:53:06.40ID:r8rQ87Qr0
辞書のキーが存在しないのは、例外じゃない。
最初から想定内の事で、予想がつくから

例外はファイルが存在しないとか

Go では例外を嫌って、複数の戻り値で、エラー値を返す
2020/11/30(月) 16:56:08.66ID:r8rQ87Qr0
漏れは、戻り値を変数に入れておいて、return は1つだけにしてる

if 条件
result = 1
else
result = 2
end

return result
2020/11/30(月) 17:07:26.72ID:pPofn0IB0
うっかりミスってreturnし忘れてもIDEが警告してくれるから、分岐それぞれでreturnするほうが好き
2020/11/30(月) 17:08:29.73ID:8S8hZPx60
複数returnとかワンライナーとかはそれこそ正解の無い事だから各々好きにしてくれよ
TryGetValueとContainskey+インデクサは正解があると思ってるからこっちはつい反論し続けてしまったが
2020/11/30(月) 17:11:06.92ID:DAJE5R+zd
なぜこのスレはテンプレを見る限り質問スレなのにスレタイにそれを示唆する文言が入っていないのですか?
803デフォルトの名無しさん (ワッチョイ d75f-OOND)
垢版 |
2020/11/30(月) 17:15:26.09ID:3PLmCTmV0
ヌルチェックやりはじめてから一刻も早くreturnすることを考えて書くようになった
階層が深くならないので見やすいし、上の部分だけである条件にあてはまった処理が完結してるので読みやすい
2020/11/30(月) 17:24:24.88ID:tpJ2df0N0
>>797
ね、Cですら"推奨"なのに
2020/11/30(月) 18:17:44.47ID:a85534SW0
>>796
>危険だから、MISRA-C の禁止事項
Mandatory, Required, Advisoryの3段階のうちAdvisoryなので禁止事項ではないね
2020/11/30(月) 18:30:53.38ID:n+7nNLssM
>>800
さすがにMISRAとかが言ってるのはそう言う低レベルな話じゃなくて途中脱出でのリソース開放漏れとかを心配してる
なのでC#なら例外とかusingとかを適切に使えばそれほど問題にならない
クラス継承させた時のIDisposeのコーディングが面倒なのがたまにキズだけど
2020/11/30(月) 18:52:25.38ID:+JMSCADPD
議論は然るべきスレでどうぞ
ふらっと C#,C♯,C#(議論用) [無断転載禁止]©2ch.net
https://mevius.5ch.net/test/read.cgi/tech/1469538912/
2020/11/30(月) 19:48:14.13ID:xZxi3SwM0
>>805
またRuby君がいい加減な知識で嘘を垂れ流そうとしてたわけか
2020/11/30(月) 21:11:19.50ID:X4ikUZ5gM
いい加減なのは知識じゃなくて遺伝子じゃねえのか
欠陥品なんだから
2020/11/30(月) 21:11:29.21ID:a85534SW0
少し調べてみたけどMISRAがsingle returnを推奨する根拠に上げてるIEC 61508には
”subprograms should have a single entry and a single exit only;”と書かれているだけ

そこに参考文献としてヨードン/コンスタンティンの「ソフトウェアの構造化設計法」を上げてるが
ヨードンやダイクストラが提唱したsingle exitは時代的にも意味が違うのでルール自体の根拠が薄い
https://softwareengineering.stackexchange.com/questions/118703/

1993年出版のCode Completeでも今回のようなケースはmultiple returnが推奨されてるくらいなので
single returnはリソースクリーンアップが必要だけど
他の方法がどうしても取れないような特殊なケースでしか意味がないと思って良さそう
2020/11/30(月) 21:15:38.40ID:tnWbc17e0
どうでもよくねw
2020/11/30(月) 21:56:17.24ID:r8rQ87Qr0
Cプログラミングの落とし穴
C Traps and Pitfalls, Andrew Koenig, 1989

ここから、Lint, MISRA-C などが出来た
2020/11/30(月) 22:27:10.33ID:n5+DCEBK0
c#スレなんですがそれは
2020/12/01(火) 11:25:23.55ID:ZwYRJuoF0
C#とはC++++、つまりCとC++を継承した言語である
よってC#スレにおいてCとC++は範囲内
悔しかったら言語名を変えることだな
2020/12/01(火) 11:27:04.96ID:vLuBExG+d
キチガイ
2020/12/01(火) 11:45:19.44ID:K5BMxGNOM
似た話でelseを省略するな派もたまにいるけど、元はCOBOLの文法ではelse書かないとブロックの区切りが分かりにくいかららしいね
2020/12/01(火) 12:14:20.95ID:k3h/30i7a
そんな流派の人に会ったことないけど、意図はたぶん古典的なぶら下がり問題対策だろうね
俺はこんなミスしたことないしIDEの時代には杞憂だと思うけど

if (true)
  if (false) {}
else Console.WriteLine("来ないはず");
2020/12/01(火) 14:56:29.62ID:6hEFZljjM
elseを省略しちゃダメって言うのは俺も見たことないな
>>817みたいなのを避けるために { } を省略しちゃダメって言うのは見かけるけど
2020/12/02(水) 00:57:12.14ID:+AssLSaA0
最近久しぶりに起動したらVSのテキストエディタの「自動メンバー表示」の項目ををカーソルキーで動かすのがとんでもなく重いんだけど俺環?
2020/12/02(水) 01:47:00.65ID:HjUyDubp0
Dispose()しないといけない条件がいまいち分からないんですが、
コンポジションとして参照を保持しているメンバーがDispose()メソッドを持ってたら、Dispose()を実装しないといけない、ていう理解でいいんでしょうか?
2020/12/02(水) 10:14:54.41ID:ebqkblVHH
>>820
たとえばファイルを開いて中身を書き換える処理をFileStreamでするじゃん
開いてる間は他の人やプログラムがそのファイルを使えない状況になるから
使い終わったらちゃんとDisposeで閉じましょうねって事
2020/12/02(水) 12:15:24.35ID:q6qthHEM0
画像とかメモリ消費量が多いオブジェクトに対して、使い終わったらちゃんとDisposeで破棄しましょうねって事
2020/12/02(水) 12:32:26.40ID:/5AdVnEZ0
>>820
基本はYes
内部でそのメンバをDisposeする仕組みが他にあるなら別に実装しなくても良いが、とは言えIDisposableを実装しておけばそのラップクラスでもusingステートメント使えるから分かりやすいしね
IDisposableはコードでDisposeせずともGCによる破棄タイミングでDisposeしてくれるから最悪し忘れても大丈夫だが(GCによるオートDisposeはパフォーマンスが悪いので出来れば避けるべきだが)
2020/12/02(水) 12:51:23.41ID:VuN4nxV5M
>>820
そうとは限らない
たとえば外部のAPIを使っていて、使い終わったら必ずある処理を最後に呼ばなければならないという決まりがある場合
たとえばある一連の処理の間は一時ファイルを作り、最後に消す必要がある場合
そういったユースケースをクラスにするならDisposeを実装することになるだろうな
Disposeってのはつまり、最後に特定の処理を必ず呼ばなければならないという規約に他ならない
2020/12/02(水) 18:14:26.77ID:w77bbFvMa
>>820
エンジニアは教条主義的に考えてはいけない。
何も難しくない。

オブジェクトが自分のメンバー(フィールドかプロパティ)のDisposeを呼ぶべきタイミングを
自分で判断できるならわざわざDisposeを実装して他人にそれを任せる必要はない。
できないならDisposeを晒して他人にお願いする。

それだけでしょ。
でも「Disposeを呼ぶべきタイミングを自分で判断できる」のはメソッド呼び出しが
完了した後も別のスレッドで動作を続けるタイプのオブジェクトだけなので
そうは多くないはずだよね。
2020/12/02(水) 19:47:17.83ID:o81q9kO+D
>>1
> なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#, C♯, C#相談室 Part94
http://mevius.5ch.net/test/read.cgi/tech/1553075856/

ふらっと C#,C♯,C#(議論用) [無断転載禁止]©2ch.net
https://mevius.5ch.net/test/read.cgi/tech/1469538912/

テンプレも読めない奴らがする議論は、
もはや議論ではなくマウンティング合戦
2020/12/02(水) 20:41:49.29ID:w77bbFvMa
>>826
君がやってるのもそのマウンティング合戦のうちなのは自覚して欲しいよねw
もはや5ch全体がそうだけど特にここは過疎スレなわけで、そんな目くじら立てることないと思うよ
誰か困る奴いるの?w
誰もいないって。
2020/12/02(水) 21:21:31.32ID:hwkqsjy70
過疎スレでもルールは守れよ
2020/12/02(水) 21:58:13.02ID:4huF2MSH0
マウンティング合戦なんか起こってたら
初心者が尻込みして書き込むのをやめてしまったりするわな
2020/12/03(木) 00:08:24.38ID:AfLSjnCy0
winformでwebview2を使ってるんですけどcookieをセットする方法がわからなくて困ってます
どなたかわかる方教えて下さい
2020/12/03(木) 02:05:41.69ID:plL1xX/c0
みなさんありがとうございます。
そして何かすみませんでした。
2020/12/03(木) 06:58:36.35ID:HwhU8QlY0
>>831
絶対に許さねぇからな
末代まで祝ってやるから覚悟しろよ
2020/12/03(木) 07:07:12.64ID:UmUyqAch0
今更訊きづらいけどgoto文のラベルの命名ルールって

     goto maki;
hirohisa:
     System.Console.WriteLine("誰だよ");
     goto hell;
maki:
     System.Console.WriteLine("知ってる");
     goto hirohisa;
hell:
     System.Console.WriteLine("そうだな");

こんなんでいいの?
834デフォルトの名無しさん (ワッチョイ ca7c-64Es)
垢版 |
2020/12/03(木) 09:22:44.20ID:Mqqeu2dm0
>>830
webView2.CoreWebView2.CookieManagerはどう?
2020/12/03(木) 16:26:09.15ID:UmUyqAch0
webview2とCEFSharpのどっちがいいのか
2020/12/04(金) 01:59:10.27ID:/XRPGQMq0
IDisposable obj = otherObj;
using(obj){
obj = anotherObj;
}
2020/12/04(金) 03:16:37.86ID:yDsXPkFS0
>>836
これビルド通るの?
>オブジェクトは、using ブロック内では読み取り専用です。変更したり再割り当てしたりすることはできません。
838デフォルトの名無しさん (ワッチョイ c09b-jrSk)
垢版 |
2020/12/04(金) 16:12:00.25ID:ZsgfFad40
nugetからインストールしたライブラリですが
別のパソコンから同じプロジェクトを開けるとusing句がエラーになってしまい
ライブラリを一度アンインストール→インストールし直さなくてはなりません

複数のパソコンで同一プロジェクトを編集するときnugetは使えないのでしょうか
2020/12/04(金) 16:16:23.76ID:0hbyHhKrd
nugetの修復みたいなことすれば足りないもの探して再DLしてくれるよ
2020/12/04(金) 16:31:08.42ID:e5C89TYX0
”別のパソコンから”ってもしかしてネットワーク共有して直接開いてるの?
2020/12/04(金) 16:55:03.48ID:ot5BaqCCa
>>838
COMじゃないならライブラリのアセンブリをプロジェクトのフォルダ内に置いて
それを参照すれば一応できるんじゃないの?

やったことないから知らんけど
2020/12/04(金) 16:55:13.19ID:edWfS5jb0
>>838
nugetのライブラリって各PCっていうかVS毎に管理しているから、ソースを別の場所に
持っていったらその環境で指定されているライブラリを拾わないとダメなんじゃ
なかったっけ?
>>839が言ってるみたいなことがnugetの管理ツールだかメニューにあったような
843デフォルトの名無しさん (ワッチョイ b0f1-xTiW)
垢版 |
2020/12/04(金) 17:04:36.37ID:ZLeuk8KN0
>>838
チキンマックナゲットは
セールのときは5個入り200円だから
そのときに買うのがベストだと思うよ。
844デフォルトの名無しさん (ワッチョイ b0f1-xTiW)
垢版 |
2020/12/04(金) 17:05:31.23ID:ZLeuk8KN0
ソースは必ずバーベキューを。
バーベキュー以外は糞まずくハズレ。
2020/12/04(金) 17:25:30.91ID:0hbyHhKrd
CIでビルドするとき、確実にnugetの修復が必要になるから構築したことあるならわかるはず
コマンドラインからnugetにsln渡してやればDLしてくれる

つうかオンラインからいつでも好きなversionを落としてこれるのがnuget等ライブラリ管理ソフトの強みなんだからプロジェクト内にファイルなんて置いたらメリットが減る
外部ライブラリを編集しないのにバージョン管理下においてプロジェクトを肥大化させる意味がない
2020/12/04(金) 17:50:19.19ID:EWRKs4L00
Nugetってmpnと比べて
なんでなんなにトラブルの?
2020/12/04(金) 17:56:44.09ID:vwTMj3ZS0
mpn…なんな…?
2020/12/04(金) 18:37:31.14ID:4RJVpdFOr
わりっ!
2020/12/04(金) 18:50:13.35ID:V5csDP6P0
dotnet restoreすればいいけどdotnet buildとかやれば勝手にやってくれる
2020/12/04(金) 18:57:48.00ID:L60rBM570
>>837
適当なクラスに置き換えたらビルドできますよ。
851デフォルトの名無しさん (ワッチョイ 6e01-zLCK)
垢版 |
2020/12/04(金) 22:05:08.94ID:9AUT9QCq0
新潟から週2回東京に出勤、サイボウズの複業採用社員に聞く複業ライフのリアル。
https://www.businessinsider.jp/post-166126
兼業でフリーライター、サイボウズ社員・明石悠佳に学ぶパラレルワーク術
https://www.wwdjapan.com/articles/752575
「複業を解禁しなければ人も企業も成長しない」複業全面OKのサイボウズ社長と実践社員の本音対談
https://www.businessinsider.jp/post-33893
育休は最長6年、副業もOK! サイボウズはなぜ「100人100通りの人事制度」を作ったのか
https://logmi.jp/business/articles/50252
超異例「週休4日制」の導入をSMBC日興証券社長が決めた理由
https://diamond.jp/articles/-/223832
週休3日制をさらに進めた週休4日制
https://www.k-society.com/recruit/why-four-days-off-a-week/
採用情報(週休3日制を超えた週休4日制の正社員求人 | 副業OK
https://www.k-society.com/recruit/
2020年4月より「週休3日制」を導入。テックカンパニー化に向け、好循環を生み出すエンジニアリング組織へ
https://prtimes.jp/main/html/rd/p/000000096.000016431.html
2020/12/05(土) 09:07:58.88ID:7mh3qGhb0
ライブラリの話ですみません
SevenZipSharpにてSolid圧縮ファイルを[STAThread](FormやWPFのメインスレッド)にてExtractArchiveするとフリーズしてしまうのは私だけでしょうか?
別スレッドやTask化したり、そもそもSTAThreadが使われないConsoleアプリでは同期でも全く正常にSolid圧縮も解凍されるのですが
853デフォルトの名無しさん (ワッチョイ 0e68-9rBX)
垢版 |
2020/12/05(土) 10:37:20.60ID:kSej4vti0
List<List<List<int>>>→List<List<int>>
List<List<int>>→List<int>
にする方法ってLINQでは不可能ですか?
並び順は変えないとします。
for使うしかないですか?
854デフォルトの名無しさん (ワッチョイ 0e68-9rBX)
垢版 |
2020/12/05(土) 10:38:07.01ID:kSej4vti0
後者が
{1,2,4}{3,9,8}→1,2,4,3,9,8って感じ
2020/12/05(土) 11:00:35.05ID:DXfBmITDd
>>853
var result = iList.SelectMany( i => i )
2020/12/05(土) 11:12:57.38ID:+y18mv1b0
ぐぐればすぐ見つかるわよ
857デフォルトの名無しさん (ブーイモ MMfd-xTiW)
垢版 |
2020/12/05(土) 11:31:13.29ID:CCPlFK06M
>>856
なぐるわよ
858デフォルトの名無しさん (ワッチョイ 0e68-9rBX)
垢版 |
2020/12/05(土) 11:42:56.05ID:kSej4vti0
>>855
順番変わりますか?
2020/12/05(土) 11:52:38.53ID:qYbtudQ20
TOARRAYのADDRANGEだよさっさとしろよグズ
2020/12/05(土) 12:31:48.70ID:fwzFFaeU0
>>858
多分変わらないけど、やってみて。
2020/12/05(土) 12:39:27.19ID:qL2nBB2w0
>>852
それは本来1秒とかで終わるはずがいつまで経っても終わらないってこと?
まあUIスレッドでやることじゃないからTask使ってればいいよ
2020/12/05(土) 13:26:31.39ID:UBJq3HVh0
nlogで入れた.configが読み専になったから、しょうがなくありものを先に置いといてnugetしなおしたらなんとかなった
2020/12/05(土) 14:02:33.08ID:cSIoQ91v0
>>858
仮に駄目なら自分で拡張メソッド書けばいいだけだよ
数分で書ける程度のもの
864デフォルトの名無しさん (ブーイモ MM5e-JQIg)
垢版 |
2020/12/05(土) 15:30:56.23ID:OcFAL7DuM
手元では大丈夫でもリリースした先でダメでした、というオチがたのしそう
2020/12/06(日) 10:13:12.99ID:a+vxG21/r
c#9.0でガラッと変わるので皆さん頑張ってお勉強してください
2020/12/06(日) 10:18:38.00ID:a+vxG21/r
C#の思想が塗り替えられています
2020/12/06(日) 10:20:10.96ID:xxrxxdsn0
たとえば?
2020/12/06(日) 10:26:12.41ID:a+vxG21/r
recordです
他の言語から輸入した超便利機能です
869デフォルトの名無しさん (ワッチョイ ec6a-l3pW)
垢版 |
2020/12/06(日) 11:07:39.97ID:GAck2gc00
recordは便利だけど勉強しなおさなきゃいけないレベルでもない
新しいこといくつか覚えればいいだけ
2020/12/06(日) 11:11:11.75ID:HPmVPA7T0
expression blocksあたりが来たらC#はC#とは違う別のなにかになりそうな勢いだな
2020/12/06(日) 11:38:38.75ID:q4vfNSTS0
recordって別にただのstructだろ?
比較の仕方が違うだけで
2020/12/06(日) 11:42:51.47ID:bQe6lBYR0
参照型のイコールの動作がわかんなかった
2020/12/06(日) 11:51:20.42ID:oEu15NIyd
>>871
根本的に勘違いしてるぞお前
record はstructじゃねーよ
2020/12/06(日) 12:22:22.88ID:3Mg1tJ4o0
>>873
KWSK
875デフォルトの名無しさん (ワッチョイ ec6a-l3pW)
垢版 |
2020/12/06(日) 12:41:32.76ID:GAck2gc00
https://docs.microsoft.com/ja-jp/dotnet/csharp/whats-new/csharp-9#record-types

レコード型を使用すると、変更できない参照型を .NET で簡単に作成できます。

従来、.NET 型は、参照型 (クラス型と匿名型を含む) と値型 (構造体とタプルを含む) に大別されています。
2020/12/06(日) 12:56:19.96ID:E6YSEnmp0
つまり、リードオンリーで参照するみたいな感じか?
2020/12/06(日) 13:08:05.96ID:e5/goOFG0
record自体に動的な参照型は持てない感じ?
2020/12/06(日) 13:08:42.54ID:a+vxG21/r
多分今後recordを使ってないコードを見るとイライラするようになるでしょう
今すぐにじゃなくてもそのうち確実に

古いコードは全部打ち捨てられるでしょう
ただMVVM命の人には関係ないでしょう
2020/12/06(日) 13:13:29.20ID:a+vxG21/r
そして普通にprivateを使わなくなる可能性もあります
C#の初期の思想が徐々に塗り替えられ捨てられていきます
2020/12/06(日) 13:18:25.99ID:3Mg1tJ4o0
既にキマイラだよなぁ
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況