[過去ログ]
ふらっと C#,C♯,C#(初心者用) Part158 (1002レス)
ふらっと C#,C♯,C#(初心者用) Part158 http://mevius.5ch.net/test/read.cgi/tech/1679783460/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
216: デフォルトの名無しさん (ワッチョイ 9194-izbf) [sage] 2023/04/11(火) 19:01:55.92 ID:yYayl2te0 https://books.google.co.jp/books?id=4CJdEAAAQBAJ&pg=PA112#v=onepage&q&f=false の内容に関しての質問なんだけど、 Fooのコンストラクタをstaticコンストラクタに書き換えると、何で3 3になるの? Console.WriteLine(Foo.X); // 3 class Foo { public static Foo Instance = new Foo(); public static int X = 3; static Foo() => Console.WriteLine(X); // 3 } http://mevius.5ch.net/test/read.cgi/tech/1679783460/216
218: デフォルトの名無しさん (ワッチョイ 9194-izbf) [sage] 2023/04/11(火) 19:14:24.00 ID:yYayl2te0 >>217 いや、だから static を付けない場合は、最初の出力は 0 なんだって で、何故 static を付けると、3 になるかという事を聞きたいわけ http://mevius.5ch.net/test/read.cgi/tech/1679783460/218
220: デフォルトの名無しさん (ワッチョイ 9194-izbf) [sage] 2023/04/11(火) 19:19:52.43 ID:yYayl2te0 >>219 で、static を付けた場合と付けなかった場合の出力結果の違いはどういう理由? http://mevius.5ch.net/test/read.cgi/tech/1679783460/220
221: デフォルトの名無しさん (ワッチョイ 9194-izbf) [sage] 2023/04/11(火) 19:21:27.61 ID:yYayl2te0 >>220 デフォルトコンストラクタ Foo() の直前の static の事ね http://mevius.5ch.net/test/read.cgi/tech/1679783460/221
224: デフォルトの名無しさん (ワッチョイ 9194-izbf) [sage] 2023/04/11(火) 19:39:59.03 ID:yYayl2te0 >>222-223 staticを付けない、コンストラクタの場合、class Fooの最初の行でインスタンスが生成された時点では、Xが3に初期化されてないので、0になるが、 staticを付けた静的コンストラクタの場合、class Fooの最初の行とは無関係に、既にXが3に初期化された状態で Console.WriteLine(X) が実行済みなのね public static Foo Instance = new Foo(); をコメントアウトして実行させてみて、やっと気付いた 有難う http://mevius.5ch.net/test/read.cgi/tech/1679783460/224
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.041s