[過去ログ] C#, C♯, C#相談室 Part97 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
54(2): デフォルトの名無しさん (オイコラミネオ MM5d-Or7w) [sage] 2023/01/07(土) 10:18:16.28 ID:FC273Y3JM(1/10) AAS
>>44誰かが書いてるけどrecordじゃだめなん?
public record Person(string FirstName, string LastName);
55(1): デフォルトの名無しさん (ドコグロ MMa3-4fYz) [sage] 2023/01/07(土) 11:12:47.51 ID:ErVvBSvoM(1) AAS
>>5353(1): デフォルトの名無しさん (アウアウウー Sac7-IAh0) [sage] 2023/01/06(金) 20:12:53.98 ID:KHJficEWa(1) AAS
>>52
C++のconstの場合は、フィールドが全て読み取り専用になり、読み取り専用(const)としてマークされたメソッドしか呼べなくなる
TypeScriptのReadonly<>の場合は、全プロパティが読み取り専用になった「型」が生成される
TypeScriptというかJSではメソッドは単に関数を返すプロパティなので、メソッドの内容には特に関知しない
何それ凄い便利じゃん
>>54
できればプロパティを1つ1つ書きたくないんだよね
59: デフォルトの名無しさん (スッププ Sdb3-BvPj) [sage] 2023/01/07(土) 13:51:35.25 ID:unZBLw7Xd(1/2) AAS
質問者は既存のミュータブルなクラスのプロパティを読み取り専用にしようとしている
>>54だと同じプロパティを全部定義し直さなきゃいけないし、元のクラスからコピーする手間も必要だ
>>4949(2): デフォルトの名無しさん (ワッチョイ 9365-IAh0) [sage] 2023/01/06(金) 14:27:10.69 ID:zhrc9IIn0(1) AAS
いや継承は必要なくて、C++なら単にそのクラスのインスタンスを格納する変数や引数の型をconstにするだけで読み取り専用になるよ
TypeScriptもReadOnly<X>とするだけで簡単に読み取り専用のXの型を作れる
の方法であればプロパティを定義し直す必要もコピーする必要もない
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 1.554s*