!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を3行冒頭に書くこと(1行分は消えて表示されない為、もう1行は予備)
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、質問者自身なんだか意味がよく分からない質問、ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスや酔っぱらいレスはやめてください。見かけたらNGしましょう。相手してしまったらあなたも荒らしです
>>980を踏んだ人は新スレを建てて下さい。>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■前スレ
ふらっと C#,C♯,C#(初心者用) Part157
https://mevius.5ch.net/test/read.cgi/tech/1669349768/
■関連スレ
C#, C♯, C#相談室 Part97
https://mevius.5ch.net/test/read.cgi/tech/1671585518/
■コードを貼る場合は↓を使いましょう。
https://ideone.com/
https://dotnetfiddle.net/
初心者はまずVisual Studioを使いましょう。なおVisual Studioの使い方などに関しては各バージョンで違うので専用スレでお願いします
http://www.visualstudio.com/downloads/
■情報源
https://learn.microsoft.com/ja-jp/dotnet/standard/class-libraries
https://learn.microsoft.com/ja-jp/dotnet/csharp/language-reference/
https://learn.microsoft.com/en-us/dotnet/standard/class-libraries
https://referencesource.microsoft.com/
https://source.dot.net/
・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
https://ufcpp.net/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
ふらっと C#,C♯,C#(初心者用) Part158
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ fe7b-Nimo)
2023/03/26(日) 07:31:00.51ID:2LMOL5Ty0157デフォルトの名無しさん (ワッチョイ ff7b-UQeZ)
2023/04/07(金) 18:32:13.85ID:78O19JXu0158デフォルトの名無しさん (スプッッ Sd9f-j25d)
2023/04/07(金) 18:32:16.65ID:nu6NXWXzd 馬鹿ってエラーメッセージも提示しないよな
馬鹿過ぎるから、オブジェクト名とかプロパティとか全角()を打ち込んでいそう
馬鹿過ぎるから、オブジェクト名とかプロパティとか全角()を打ち込んでいそう
159デフォルトの名無しさん (オイコラミネオ MM53-icd+)
2023/04/07(金) 18:33:21.02ID:377j0hRUM どこかで間違えてるからでしょう
とりあえずエラー内容を書いてください
あと
これは打ち込んだコードをそのままコピーしてませんよね?
全角文字と半角文字が混ざってて普通は動きません
行末に ; を付けましょう
それと変数aの値はaですか?
とりあえずエラー内容を書いてください
あと
これは打ち込んだコードをそのままコピーしてませんよね?
全角文字と半角文字が混ざってて普通は動きません
行末に ; を付けましょう
それと変数aの値はaですか?
160デフォルトの名無しさん (ワントンキン MMdf-FlsS)
2023/04/07(金) 18:41:20.55ID:htDU62+OM >>159
全角;を入力するぞ
全角;を入力するぞ
161デフォルトの名無しさん (ワッチョイ 5f01-9xvd)
2023/04/07(金) 18:48:43.17ID:C4KkKia50 >>155
メニューやボタン類がICommand対応になる的な
メニューやボタン類がICommand対応になる的な
162デフォルトの名無しさん (オイコラミネオ MM53-icd+)
2023/04/07(金) 19:04:25.43ID:377j0hRUM 質問者の人はビビらないで続けて欲しい
誰でも最初はこんなもんだ
一番の馬鹿はテンプレが読めず初心者相手にマウント取るしかできないんでそういうのは無視でいい
誰でも最初はこんなもんだ
一番の馬鹿はテンプレが読めず初心者相手にマウント取るしかできないんでそういうのは無視でいい
163デフォルトの名無しさん (アウアウウー Sa23-VQD5)
2023/04/07(金) 19:07:05.47ID:lYV4UoJIa 5chで聞くとこうなるのがわかってるのにアホなのかな?
164デフォルトの名無しさん (ワッチョイ df07-DB2t)
2023/04/07(金) 19:32:22.30ID:ZyGCTKiu0 ありがとうございます
原因調べてみます
たぶん;の付け忘れか
型名 a
というふうにaを変数化してなかったからだと思います。
原因調べてみます
たぶん;の付け忘れか
型名 a
というふうにaを変数化してなかったからだと思います。
165デフォルトの名無しさん (ワンミングク MM03-FlsS)
2023/04/07(金) 19:35:04.00ID:g9oDCLqTM あくまでエラーメッセージを書かない馬鹿
166デフォルトの名無しさん (ワッチョイ 5f07-VQD5)
2023/04/07(金) 19:35:52.08ID:1Moiy0gQ0 >>161
とっくに対応してるが?
とっくに対応してるが?
167デフォルトの名無しさん (ワッチョイ 5f07-VQD5)
2023/04/07(金) 19:37:35.11ID:1Moiy0gQ0 >>165
いいんだよ
解決しなくても話し相手になればそれで満足して帰ってくれるんだから
車のエンジンがかからないからどうしようと女に聞かれたらバッテリーがどうこう言っちゃだめ
同情して雑談するのが正解
いいんだよ
解決しなくても話し相手になればそれで満足して帰ってくれるんだから
車のエンジンがかからないからどうしようと女に聞かれたらバッテリーがどうこう言っちゃだめ
同情して雑談するのが正解
168デフォルトの名無しさん (ワンミングク MM03-FlsS)
2023/04/07(金) 19:41:22.07ID:g9oDCLqTM >>167
林檎を一緒に買いに行くのか!
林檎を一緒に買いに行くのか!
169デフォルトの名無しさん (アウアウウー Sa23-VQD5)
2023/04/07(金) 19:43:55.45ID:lYV4UoJIa >>168
マックのシェアが上がったのはそういうわけ
マックのシェアが上がったのはそういうわけ
170デフォルトの名無しさん (オイコラミネオ MM53-icd+)
2023/04/07(金) 19:47:35.73ID:377j0hRUM 以前17歳の少年にmacはwindowsも動くから開発するならmac一択でwindows機は買わなくていいって言われたよ
そういう理由でユーザーを増やしてる面もある
情報系の大学ではmac持ってる生徒が多い
そういう理由でユーザーを増やしてる面もある
情報系の大学ではmac持ってる生徒が多い
171デフォルトの名無しさん (ワッチョイ 5fe5-gzdx)
2023/04/07(金) 19:53:07.95ID:0nhk3VLO0172デフォルトの名無しさん (オイコラミネオ MM53-icd+)
2023/04/07(金) 19:54:54.12ID:377j0hRUM 自分はmac上のwindowsでしか起こらないバグもあるかもしれないから意味ないと思うと答えたが
そんなの言いだしたらきりがないなと後で思った
そんなの言いだしたらきりがないなと後で思った
173デフォルトの名無しさん (ワッチョイ 92bd-Rzwh)
2023/04/08(土) 00:55:25.26ID:3Ljte8fK0 Windowsのライセンスを用意してMacで動かすくらいなら、
安いWindows PCも買ったほうが同時に使えるし便利だと思う。
安いWindows PCも買ったほうが同時に使えるし便利だと思う。
174デフォルトの名無しさん (ラクッペペ MM66-DefY)
2023/04/08(土) 02:10:45.67ID:HLFl9C7qM どうせライセンス違反の不正使用だろ
175デフォルトの名無しさん (ワッチョイ 92bd-Rzwh)
2023/04/08(土) 02:25:03.68ID:3Ljte8fK0 >>134
プログラミング言語は複数覚えていったほうがいいから、まあ頑張れ。
プログラミング言語は複数覚えていったほうがいいから、まあ頑張れ。
176デフォルトの名無しさん (ワッチョイ eebb-9Wvd)
2023/04/08(土) 18:34:36.54ID:fmzyFWYH0 文法が似ているだけで、C++とC#とでは必要な知識の幅が全然違うような気がしてしまう
177デフォルトの名無しさん (ワッチョイ 92bd-Rzwh)
2023/04/08(土) 19:26:35.54ID:3Ljte8fK0 C++と言っておきながら、実はC++/CLIだったりするとさらに大変。
178デフォルトの名無しさん (ワッチョイ e9ad-HL3J)
2023/04/08(土) 21:45:50.77ID:CCnvrQGQ0 >>134
STLも使えるしC言語よりはマシ
STLも使えるしC言語よりはマシ
179デフォルトの名無しさん (ササクッテロロ Spd1-pbGt)
2023/04/09(日) 14:11:13.69ID:E8Nnpiwgp C#がイニシアチブ取れる最大の理由はライブラリやクラスメソッドの豊富な点
CやC++は環境依存が高過ぎて無理だった
CやC++は環境依存が高過ぎて無理だった
180デフォルトの名無しさん (ワッチョイ 0279-90pI)
2023/04/09(日) 15:24:20.69ID:I9Qf3W7D0 C#は実行環境が基本Windowsで処理系も1個しかなく
外部が作った最大公約数的な規格やらに振り回される事もないからね
言語の在り方としてはDelphiからC#まで設計の中心に居たアンダースヘルスバーグの影響が一番でかいだろうけども
外部が作った最大公約数的な規格やらに振り回される事もないからね
言語の在り方としてはDelphiからC#まで設計の中心に居たアンダースヘルスバーグの影響が一番でかいだろうけども
181デフォルトの名無しさん (オイコラミネオ MM29-Ay2p)
2023/04/09(日) 15:42:52.26ID:0jWwjzccM へじたんというかボーランドから引っ張って来たグループ全体の影響だね
へじたんは10年ぐらい前にtsに行っちゃって多分だけどずっといない
tsの改善提案もたまにする
twitterでts10周年について言及してたけどC#は言及されない
へじたんは10年ぐらい前にtsに行っちゃって多分だけどずっといない
tsの改善提案もたまにする
twitterでts10周年について言及してたけどC#は言及されない
182デフォルトの名無しさん (ワッチョイ 412d-dXWb)
2023/04/09(日) 16:10:51.58ID:fcL4nlHr0 C++は美しくないので使うのやめた方がいい
183デフォルトの名無しさん (オイコラミネオ MM29-Ay2p)
2023/04/09(日) 16:22:39.13ID:0jWwjzccM c++はパフォーマンス目的じゃないと使うべきじゃないかな(個人の感想です)
でも本当にパフォーマンス目的なら積極的に使うべきで地球の温暖化予防になる
.net frameworkの古い部分はc++的に書かれてるところが点在してる
変数名とか…
ヘルパークラスの中身に多い気がする
そもそもがC#はデビューしてなかったんだからMSの中にいたのは大部分がCかC++プログラマだったから仕方がない
でも本当にパフォーマンス目的なら積極的に使うべきで地球の温暖化予防になる
.net frameworkの古い部分はc++的に書かれてるところが点在してる
変数名とか…
ヘルパークラスの中身に多い気がする
そもそもがC#はデビューしてなかったんだからMSの中にいたのは大部分がCかC++プログラマだったから仕方がない
184デフォルトの名無しさん (ワンミングク MM52-k0ie)
2023/04/09(日) 17:02:57.88ID:IIry9qCTM185デフォルトの名無しさん (オイコラミネオ MM29-Ay2p)
2023/04/09(日) 17:10:39.08ID:0jWwjzccM >>184
え?どこが嘘だと思った?
はっきり指摘してくれよ
C#発売前にどうやってネイティブのC#プログラマ募集すんの?
2002年にC#が発売されたんだけどその時,net framewarkはついていた
え?どこが嘘だと思った?
はっきり指摘してくれよ
C#発売前にどうやってネイティブのC#プログラマ募集すんの?
2002年にC#が発売されたんだけどその時,net framewarkはついていた
186デフォルトの名無しさん (スプッッ Sd22-RMXA)
2023/04/09(日) 18:39:12.85ID:99/FlESqd187デフォルトの名無しさん (オイコラミネオ MM29-Ay2p)
2023/04/09(日) 18:56:34.94ID:0jWwjzccM >>186
話がかみ合ってないと言うかなんでIDコロコロしてんの?
それとどこが嘘なのかはっきり書けよ
,net frameworkを開発したときにC#で書いたプログラマはもともとなにプログラマでしたか?
ネイティブC#プログラマじゃないでしょ?
おそらくCかC++(それかボーランドから流れて来たobject Pascalプログラマ)じゃないの?
だから.net frameworkのソースにC++のような名残が多いんだろ?
C#ブートストラップも最初からC#で書いてたと思ってそうで怖い
話がかみ合ってないと言うかなんでIDコロコロしてんの?
それとどこが嘘なのかはっきり書けよ
,net frameworkを開発したときにC#で書いたプログラマはもともとなにプログラマでしたか?
ネイティブC#プログラマじゃないでしょ?
おそらくCかC++(それかボーランドから流れて来たobject Pascalプログラマ)じゃないの?
だから.net frameworkのソースにC++のような名残が多いんだろ?
C#ブートストラップも最初からC#で書いてたと思ってそうで怖い
188デフォルトの名無しさん (オイコラミネオ MM29-Ay2p)
2023/04/09(日) 19:02:10.71ID:0jWwjzccM MS内部の開発者の多くはCかC++プログラマ
それまで存在しなかったC#で書かれた.net frameworkのソースを書いたのはC#を覚えたその人たち
どうしてこんな簡単なこともわからないんだよ
それまで存在しなかったC#で書かれた.net frameworkのソースを書いたのはC#を覚えたその人たち
どうしてこんな簡単なこともわからないんだよ
189デフォルトの名無しさん (スプッッ Sd82-RMXA)
2023/04/09(日) 20:48:24.64ID:cX6/BjZ9d >>187
馬鹿って例えばDelphiのライブラリは何で作ってあると思っているんだ?
馬鹿って例えばDelphiのライブラリは何で作ってあると思っているんだ?
190デフォルトの名無しさん (ワッチョイ a968-pZgd)
2023/04/09(日) 20:59:09.16ID:y3zvbzeA0 C++からC#を覚えたんだけど、ヘッダー不要、メモリー解放不要ってだけでほれぼれしたわ
191デフォルトの名無しさん (オイコラミネオ MM29-Rzwh)
2023/04/09(日) 22:59:42.51ID:0jWwjzccM >>189
いい加減に理解しようよ
新しい言語が出来てその言語でライブラリを書く人は他の言語の経験がある人だろ
プログラムもOOPも始めての人間には不可能てわかるだろ
もちろんその言語は初心者で他のプロジェクトなんて経験してない
なんでこの人は小学生並みの思考力もないんだろうか?
いい加減に理解しようよ
新しい言語が出来てその言語でライブラリを書く人は他の言語の経験がある人だろ
プログラムもOOPも始めての人間には不可能てわかるだろ
もちろんその言語は初心者で他のプロジェクトなんて経験してない
なんでこの人は小学生並みの思考力もないんだろうか?
192デフォルトの名無しさん (ワッチョイ 92bd-Rzwh)
2023/04/09(日) 23:13:41.21ID:jMM6L0eg0 今、画面をC#で作って、性能が必要な部分をCで書いてる。実質C++みたいな書き方してるけど。
固定長配列でよいところは固定長にして余計はメモリ確保・解放を排除、
スタックを使いすぎないようにTLSにしたり、
スレッドプールで実行スレッドがコロコロ変わるけど同一スレッドの間だけTLSを使ったり。
性能は良く、ワットパフォーマンスも良いと自画自賛しているけど、
書くのに時間がかかるし、メモリ管理で二重Freeや誤って0バイトメモリで変な落ち方して
調査に時間がかかった。
固定長配列でよいところは固定長にして余計はメモリ確保・解放を排除、
スタックを使いすぎないようにTLSにしたり、
スレッドプールで実行スレッドがコロコロ変わるけど同一スレッドの間だけTLSを使ったり。
性能は良く、ワットパフォーマンスも良いと自画自賛しているけど、
書くのに時間がかかるし、メモリ管理で二重Freeや誤って0バイトメモリで変な落ち方して
調査に時間がかかった。
193デフォルトの名無しさん (ワッチョイ 4642-Ay2p)
2023/04/09(日) 23:23:40.43ID:a3JbCGzy0 C言語はB言語で書かれたが直ぐにC言語で書き直されたという
故にC言語のライブラリはC言語で開発されている
と、例外中の例外を書いてみる
故にC言語のライブラリはC言語で開発されている
と、例外中の例外を書いてみる
194デフォルトの名無しさん (ワッチョイ 412d-dXWb)
2023/04/09(日) 23:31:44.05ID:fcL4nlHr0 セルフホストは別に例外じゃないよ
コンパイル型の言語は最終的にセルフホストになるだろ
コンパイル型の言語は最終的にセルフホストになるだろ
195デフォルトの名無しさん (ワッチョイ c5ae-izbf)
2023/04/10(月) 13:30:15.85ID:ezn0wDlC0 >>153
>MVVM ツールキットの概要
>このパッケージは .NET Standard を対象としているため、任意のアプリ プラットフォーム (UWP、WinForms、WPF、Xamarin、Uno など) で使用できます。
いつの間に対応してたんだ・・・
これでInvokeしなくて済むのか
>MVVM ツールキットの概要
>このパッケージは .NET Standard を対象としているため、任意のアプリ プラットフォーム (UWP、WinForms、WPF、Xamarin、Uno など) で使用できます。
いつの間に対応してたんだ・・・
これでInvokeしなくて済むのか
196デフォルトの名無しさん (ワッチョイ 4666-cPl8)
2023/04/10(月) 13:39:28.19ID:gE7mrU5A0 下記のコードでcomboBox1.Textに"a2"を設定しているのですが
comboBox1は"a"のままです。設定を反映する方法はあるでしょうか。
public Form1()
{
InitializeComponent();
comboBox1.Items.Add("a");
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
comboBox1.Text = "a2";
}
comboBox1は"a"のままです。設定を反映する方法はあるでしょうか。
public Form1()
{
InitializeComponent();
comboBox1.Items.Add("a");
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
comboBox1.Text = "a2";
}
197デフォルトの名無しさん (ワッチョイ 412d-dXWb)
2023/04/10(月) 14:10:01.67ID:GqegRxcS0 comboBox1.Items.Add("a2");
これを先に書かないから変更されない
これを先に書かないから変更されない
198デフォルトの名無しさん (ワッチョイ 6e7b-k+0N)
2023/04/10(月) 18:04:17.45ID:qyQrCJTA0 >>196
まずcomboBox.TextとcomboBox.Itemは別のプロパティでTextを変えても表示されない。表示されるのはcomboBox.Item
Item"a"を選択したときに表示を"a2"に変えたいということなら
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
comboBox1.SelectedIndexChanged -= comboBox1_SelectedIndexChanged;//Indexを変えるのでイベントを外す
if (comboBox1.SelectedIndex == comboBox1.Items.Count - 1)//登録されている最後のIndexを参照する
{
comboBox1.Items.RemoveAt(comboBox1.Items.Count - 1);//Itemコレクションの内容を変えるために元のアイテムを削除する
comboBox1.Items.Add("a2");//"a2"を新しく登録する
comboBox1.SelectedIndex = comboBox1.Items.Count - 1;//コレクションの内容を変えるとIndexが変わるのでIndexを指定する
}
comboBox1.SelectedIndexChanged += comboBox1_SelectedIndexChanged;
}
たぶんこのくらい必要
まずcomboBox.TextとcomboBox.Itemは別のプロパティでTextを変えても表示されない。表示されるのはcomboBox.Item
Item"a"を選択したときに表示を"a2"に変えたいということなら
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
comboBox1.SelectedIndexChanged -= comboBox1_SelectedIndexChanged;//Indexを変えるのでイベントを外す
if (comboBox1.SelectedIndex == comboBox1.Items.Count - 1)//登録されている最後のIndexを参照する
{
comboBox1.Items.RemoveAt(comboBox1.Items.Count - 1);//Itemコレクションの内容を変えるために元のアイテムを削除する
comboBox1.Items.Add("a2");//"a2"を新しく登録する
comboBox1.SelectedIndex = comboBox1.Items.Count - 1;//コレクションの内容を変えるとIndexが変わるのでIndexを指定する
}
comboBox1.SelectedIndexChanged += comboBox1_SelectedIndexChanged;
}
たぶんこのくらい必要
199デフォルトの名無しさん (ワッチョイ 5234-Ay2p)
2023/04/10(月) 19:06:06.56ID:CWrknl8o0 comboBoxのテキストを変更できるようにするプロパティがあったよね?
200デフォルトの名無しさん (ワッチョイ 25e4-eWK2)
2023/04/10(月) 19:44:46.51ID:1G6uJTu10 ワーカーサービスとサービスアプリって別物なの?
201デフォルトの名無しさん (ワッチョイ 6e10-+HcC)
2023/04/10(月) 19:54:33.42ID:025b1B4Q0 >>196
BeginInvoke(new Action(() => comboBox1.Text = "a2"));
BeginInvoke(new Action(() => comboBox1.Text = "a2"));
202デフォルトの名無しさん (ワッチョイ 8205-QZiB)
2023/04/11(火) 07:47:00.52ID:p3uKa8IZ0 comboBoxの者ですが例示頂いたサンプルコードで期待の動作をしました
ありがとうございます
.Textのセッターで書き換えられたら直感的だなと思いつつ別の仕様で都合悪いんでしょうね
ありがとうございます
.Textのセッターで書き換えられたら直感的だなと思いつつ別の仕様で都合悪いんでしょうね
203デフォルトの名無しさん (ワッチョイ 6e10-bvj9)
2023/04/11(火) 10:42:20.15ID:LwvkJIu70 大学だとmacは買うなと名指しで書かれてた
買うのはWindows11入りi5以上RAM8G以上のoffice付
買うのはWindows11入りi5以上RAM8G以上のoffice付
204デフォルトの名無しさん (ササクッテロロ Spd1-pbGt)
2023/04/11(火) 10:44:39.71ID:u/0zmHtvp >>204
Mac「も」買えば無問題だぞ
Mac「も」買えば無問題だぞ
205デフォルトの名無しさん (ワッチョイ 495f-h/KG)
2023/04/11(火) 10:56:37.78ID:U1LmOZAY0 365のアカデミック垢(Education A3/A5)を配布してない大学なんだろうか?
206デフォルトの名無しさん (ワッチョイ a9e5-/aea)
2023/04/11(火) 11:00:45.32ID:bVzsGz390207デフォルトの名無しさん (ワッチョイ 6e10-bvj9)
2023/04/11(火) 11:18:50.69ID:LwvkJIu70 officeは大学によって配布とそうじゃないとこがあるな
合格通知に付いていたパソコン購入の栞にはどこも同じようなスペックを書いてあった
毎年トラブルになってるらしくmacは非推奨、忘れてたけどSSDを強く推奨されてた。
合格通知に付いていたパソコン購入の栞にはどこも同じようなスペックを書いてあった
毎年トラブルになってるらしくmacは非推奨、忘れてたけどSSDを強く推奨されてた。
208デフォルトの名無しさん (オッペケ Srd1-QZiB)
2023/04/11(火) 12:05:57.60ID:Owu2Qdxkr209デフォルトの名無しさん (ワッチョイ 412d-dXWb)
2023/04/11(火) 13:07:41.05ID:0aEeU09s0 東大はMacだもんな
210デフォルトの名無しさん (ワッチョイ 6e10-bvj9)
2023/04/11(火) 15:24:29.19ID:LwvkJIu70 CPUが非intelな時点で選択肢には入らんでしょ
211デフォルトの名無しさん (ワッチョイ 4642-Ay2p)
2023/04/11(火) 15:24:33.92ID:M16SAa5X0 >>207
SSDをSODと空目して、時間を止めるボタンを購入しちまう人もいるだろうさ
SSDをSODと空目して、時間を止めるボタンを購入しちまう人もいるだろうさ
212デフォルトの名無しさん (ワッチョイ a9e5-/aea)
2023/04/11(火) 15:35:49.07ID:bVzsGz390 amdは許して
213デフォルトの名無しさん (ワッチョイ c5ae-izbf)
2023/04/11(火) 15:57:37.42ID:E8WJry610 経済学部とかならOS関係なくクラウドで全部出来るけども、
情報系なら機器制御とかもやるから、OS問わずは無理だろ
情報系なら機器制御とかもやるから、OS問わずは無理だろ
214デフォルトの名無しさん (ワッチョイ eebb-9Wvd)
2023/04/11(火) 17:07:55.85ID:xhbQUVf+0 授業内容によってはMac非推奨もあり得るだろう
ただどこの大学のどの学部なのか書かないことには、何に向かないのか参考にもならないだろう
ただどこの大学のどの学部なのか書かないことには、何に向かないのか参考にもならないだろう
215デフォルトの名無しさん (ワッチョイ 6e7b-k+0N)
2023/04/11(火) 18:13:31.92ID:SxJtNgeT0 ワッチョイ 6e10 3回
サクッテロロ Spd1
ワッチョイ 495f
ワッチョイ a9e5
オッペケ Srd1
ワッチョイ 412d
ワッチョイ 4642
ワッチョイ a9e5 2回
ワッチョイ c5ae
ワッチョイ eebb
サクッテロロ Spd1
ワッチョイ 495f
ワッチョイ a9e5
オッペケ Srd1
ワッチョイ 412d
ワッチョイ 4642
ワッチョイ a9e5 2回
ワッチョイ c5ae
ワッチョイ eebb
216デフォルトの名無しさん (ワッチョイ 9194-izbf)
2023/04/11(火) 19:01:55.92ID: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
}
の内容に関しての質問なんだけど、
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
}
217デフォルトの名無しさん (ワッチョイ d907-NO7/)
2023/04/11(火) 19:08:53.25ID:gigFj8HV0 なんでってConsole.WriteLineが2回呼ばれてんじゃん
218デフォルトの名無しさん (ワッチョイ 9194-izbf)
2023/04/11(火) 19:14:24.00ID:yYayl2te0219デフォルトの名無しさん (ワッチョイ d907-NO7/)
2023/04/11(火) 19:17:23.77ID:gigFj8HV0 何がわからんのかマジでわからん
初期化したらそれが出力されるのは当たり前じゃね?
初期化したらそれが出力されるのは当たり前じゃね?
220デフォルトの名無しさん (ワッチョイ 9194-izbf)
2023/04/11(火) 19:19:52.43ID:yYayl2te0 >>219
で、static を付けた場合と付けなかった場合の出力結果の違いはどういう理由?
で、static を付けた場合と付けなかった場合の出力結果の違いはどういう理由?
221デフォルトの名無しさん (ワッチョイ 9194-izbf)
2023/04/11(火) 19:21:27.61ID:yYayl2te0 >>220
デフォルトコンストラクタ Foo() の直前の static の事ね
デフォルトコンストラクタ Foo() の直前の static の事ね
222デフォルトの名無しさん (ワッチョイ d907-NO7/)
2023/04/11(火) 19:22:18.16ID:gigFj8HV0 どこにstaticつける話をしてるのか知らんけどクラスメンバーかインスタンスメンバーかの違い
静的コンストラクタはクラスメンバーがアクセスされる時点で初期化が終わってることが保証される
静的コンストラクタはクラスメンバーがアクセスされる時点で初期化が終わってることが保証される
223デフォルトの名無しさん (ワッチョイ d907-NO7/)
2023/04/11(火) 19:23:14.19ID:gigFj8HV0224デフォルトの名無しさん (ワッチョイ 9194-izbf)
2023/04/11(火) 19:39:59.03ID:yYayl2te0 >>222-223
staticを付けない、コンストラクタの場合、class Fooの最初の行でインスタンスが生成された時点では、Xが3に初期化されてないので、0になるが、
staticを付けた静的コンストラクタの場合、class Fooの最初の行とは無関係に、既にXが3に初期化された状態で Console.WriteLine(X) が実行済みなのね
public static Foo Instance = new Foo();
をコメントアウトして実行させてみて、やっと気付いた
有難う
staticを付けない、コンストラクタの場合、class Fooの最初の行でインスタンスが生成された時点では、Xが3に初期化されてないので、0になるが、
staticを付けた静的コンストラクタの場合、class Fooの最初の行とは無関係に、既にXが3に初期化された状態で Console.WriteLine(X) が実行済みなのね
public static Foo Instance = new Foo();
をコメントアウトして実行させてみて、やっと気付いた
有難う
225デフォルトの名無しさん (ワッチョイ 4201-BePx)
2023/04/11(火) 23:11:43.43ID:/nZPjbDG0 1: Console.WriteLine(Foo.X); // 3
2: class Foo {
3: public static Foo Instance = new Foo();
4: public static int X = 3;
5: static Foo() => Console.WriteLine(X); // 3
6: }
静的コンストラクタのあるクラスの場合は
静的コンストラクタが実行される直前に静的イニシャライザが定義順で実行される
1行目のFoo.Xで静的コンストラクタがトリガーされるけど
その前に静的イニシャライザが3行目、4行目の定義順で実行される
3~4行目の実行が完了してから5行目の静的コンストラクタが実行されるのでXは3
3行目のnew Foo()で実行されるのはインスタンスコンストラクタで
staticがついた5行目の静的コンストラクタとは別のものになる
2: class Foo {
3: public static Foo Instance = new Foo();
4: public static int X = 3;
5: static Foo() => Console.WriteLine(X); // 3
6: }
静的コンストラクタのあるクラスの場合は
静的コンストラクタが実行される直前に静的イニシャライザが定義順で実行される
1行目のFoo.Xで静的コンストラクタがトリガーされるけど
その前に静的イニシャライザが3行目、4行目の定義順で実行される
3~4行目の実行が完了してから5行目の静的コンストラクタが実行されるのでXは3
3行目のnew Foo()で実行されるのはインスタンスコンストラクタで
staticがついた5行目の静的コンストラクタとは別のものになる
226デフォルトの名無しさん (ワッチョイ 9194-izbf)
2023/04/12(水) 01:51:45.88ID:3I+WNe+L0 >>225
分かりやすい説明有難う御座いました。
分かりやすい説明有難う御座いました。
227デフォルトの名無しさん (ワッチョイ d907-NO7/)
2023/04/12(水) 08:44:45.21ID:75Jdcna40 静的イニシャライザの実行順は不定
228デフォルトの名無しさん (オッペケ Srd1-miqV)
2023/04/12(水) 08:58:31.49ID:5OqrGPiIr そもそもこんな使い方することってある?
こんなわかりにくい実装したらバグしか生まないだろ
こんなわかりにくい実装したらバグしか生まないだろ
229デフォルトの名無しさん (アウアウウー Sa05-NO7/)
2023/04/12(水) 09:17:16.51ID:g9fBg21da どういう順序で実行されるか解説するテキストで実験的なコードが紹介されてるだけだろ
本文が3行以上読めないやつがここで聞いただけ
本文が3行以上読めないやつがここで聞いただけ
230デフォルトの名無しさん (オッペケ Srd1-HvLO)
2023/04/12(水) 10:30:19.47ID:mXnPigifr いちいち質問者を貶すようなことでもなかろうに
231デフォルトの名無しさん (オイコラミネオ MM29-Ay2p)
2023/04/12(水) 11:26:53.10ID:yAM4RrWLM どちらかと言うと本文を読んでいないのが >>229 でみんな雰囲気で答えてるだけ
英語嫁
英語嫁
232デフォルトの名無しさん (アウアウウー Sa05-NO7/)
2023/04/12(水) 12:21:14.58ID:bugel0eha バグしか生まない実装を紹介する本ねぇ
読んだと自称するやつにはそう見えるのか
春だなぁ
読んだと自称するやつにはそう見えるのか
春だなぁ
233デフォルトの名無しさん (ブーイモ MM66-Udzl)
2023/04/12(水) 12:29:42.24ID:USOc3PY3M 実際質問の出力結果示さずにこのスレの連中にstaticありなしの出力結果予想させたら3割も正解しなさそう
234デフォルトの名無しさん (オッペケ Srd1-ZlFW)
2023/04/12(水) 12:31:58.00ID:gsM5MkRcr そういう意味ではアンチパターンだな
235デフォルトの名無しさん (オッペケ Srd1-HvLO)
2023/04/12(水) 13:45:09.09ID:4Can4aDGr C#の挙動がなぜそうなってるかの理由を知ることと、それを実際に開発に使用するかどうかは話が別だろう
当の本もこの挙動を利用して実装しろと勧めてるわけでもなし、バグしか生まない~などと腐すのも筋違い
当の本もこの挙動を利用して実装しろと勧めてるわけでもなし、バグしか生まない~などと腐すのも筋違い
236デフォルトの名無しさん (ワッチョイ 4201-BePx)
2023/04/12(水) 14:11:43.79ID:uWUQySNG0 本に書いてあるコードでは>>225の5行目にstaticはついてない
3行目と4行目を入れ替えると出力結果が変わるようなことになるという注意を促して
イニシャライザの実行順序を理解させようとしている
static fieldの定義順に依存したコードはアンチパターンと言ってもいい気はするが
現実には↓こういうコード書く人がいるので動きを理解してることは重要
https://stackoverflow.com/questions/54692923/
3行目と4行目を入れ替えると出力結果が変わるようなことになるという注意を促して
イニシャライザの実行順序を理解させようとしている
static fieldの定義順に依存したコードはアンチパターンと言ってもいい気はするが
現実には↓こういうコード書く人がいるので動きを理解してることは重要
https://stackoverflow.com/questions/54692923/
237デフォルトの名無しさん (オイコラミネオ MM29-Ay2p)
2023/04/12(水) 17:54:22.82ID:lYmUspEYM 本にはこのコードのstaticはついてないのでいくら読んでもそういう話にはならない
コード提示した人が自分でstaticつけて疑問に思ったことを書いてるだけ
チャンと英語読めば批判してる人の脊髄反射でしかないとわかる
コード提示した人が自分でstaticつけて疑問に思ったことを書いてるだけ
チャンと英語読めば批判してる人の脊髄反射でしかないとわかる
238デフォルトの名無しさん (オイコラミネオ MM29-Ay2p)
2023/04/12(水) 17:57:59.05ID:lYmUspEYM >>232
英語嫁と上で書いてやったのに読まない馬鹿
英語嫁と上で書いてやったのに読まない馬鹿
239デフォルトの名無しさん (オイコラミネオ MM29-Ay2p)
2023/04/12(水) 18:00:18.84ID:lYmUspEYM240デフォルトの名無しさん (ワッチョイ d907-NO7/)
2023/04/12(水) 21:13:56.15ID:75Jdcna40 草
241デフォルトの名無しさん (ワッチョイ c5ae-izbf)
2023/04/13(木) 17:15:29.58ID:Zu8K3N7a0 過去にはAny CPUを選ぶと32bitライブラリか64bitライブラリかわからなくてエラーになる事があるから、
x86かx64に固定するのを推奨とかどこかで見た気がするけど、
今はそんな事無くなったのかな?
x86かx64に固定するのを推奨とかどこかで見た気がするけど、
今はそんな事無くなったのかな?
242デフォルトの名無しさん (ワッチョイ c7e5-S3w6)
2023/04/18(火) 09:43:52.47ID:8GgykzJw0 ifで非null判定してからアクセスしてんのにnullの可能性がありますとか警告出す最近のC#はほんとクソ
243デフォルトの名無しさん (ワッチョイ 4707-uZLY)
2023/04/18(火) 09:47:05.00ID:zIS6YJzM0 >>242
出さねーよw
出さねーよw
244デフォルトの名無しさん (ワッチョイ bfda-wFhX)
2023/04/18(火) 10:17:07.64ID:HhMbwi3l0 コンパイラのnullチェックを混乱させる凄い(≠素晴らしい)コードなのかもしれない
245デフォルトの名無しさん (ササクッテロロ Spfb-tEYI)
2023/04/18(火) 10:21:16.50ID:dDei21Qyp 見落としてる分岐があるだけだろ
246デフォルトの名無しさん (アウアウウー Sacb-uZLY)
2023/04/18(火) 10:22:53.46ID:HoHH5EgOa 多分チェックした後に別の値を代入するか値が変化するものを使ってるんだろうな
たとえばプロパティは一回目のアクセスと二回目のアクセスで同じ値が得られるとは限らない
変数に入れろ
そしたら多分警告消えるから
たとえばプロパティは一回目のアクセスと二回目のアクセスで同じ値が得られるとは限らない
変数に入れろ
そしたら多分警告消えるから
247デフォルトの名無しさん (ワッチョイ dfbd-baic)
2023/04/19(水) 07:26:32.14ID:9LVfV8Mo0 警告が消えるのに時間がかかったり、Visual Studioを立ち上げ直したら警告が消えたことがある。
248デフォルトの名無しさん (ワッチョイ 4707-uZLY)
2023/04/19(水) 07:56:31.56ID:A9DJak9S0 マシンが遅いだけ
249デフォルトの名無しさん (ワッチョイ bf42-sFbk)
2023/04/19(水) 08:18:39.49ID:/RLG/xCj0 不必要なhoge?.hage();が残っているとnull判定されることがあるね
?取るとワーニングが消える
?取るとワーニングが消える
250デフォルトの名無しさん (ワッチョイ 4707-uZLY)
2023/04/19(水) 09:00:29.09ID:A9DJak9S0 hoge?.hoge()はhoge!=null?hoge():nullと同じ
nullが返る可能性があることを示すコードだからそりゃnullの可能性があると判定されるわな
nullが返る可能性があることを示すコードだからそりゃnullの可能性があると判定されるわな
251デフォルトの名無しさん (ワッチョイ bf42-sFbk)
2023/04/19(水) 09:16:28.63ID:/RLG/xCj0252デフォルトの名無しさん (ワッチョイ 4707-uZLY)
2023/04/19(水) 09:45:55.68ID:A9DJak9S0 そこで問題がないのに出るわけないじゃん
離れた場所にあるなら一度変数に入れなよ
そしたらnullの可能性があるかどうかマウスホバーで教えてくれるから
離れた場所にあるなら一度変数に入れなよ
そしたらnullの可能性があるかどうかマウスホバーで教えてくれるから
253デフォルトの名無しさん (ワッチョイ 4707-uZLY)
2023/04/19(水) 09:47:07.48ID:A9DJak9S0 結局この警告はバグを潰してくれてるものだから文句を言うのは筋違いだぞ
本来なら警告の代わりに実行時エラーになってたものだからな
本来なら警告の代わりに実行時エラーになってたものだからな
254デフォルトの名無しさん (ワッチョイ bf42-sFbk)
2023/04/19(水) 10:04:51.79ID:/RLG/xCj0 >>252
コンストラクタなどで初期化していて本来はワーニングが出るはずがないのに
途中でhoge?hage()なんてコードがあるからヌルが入る可能性があると判断されるようだ
だから?を外すと解決するんだが、それに築くのが大変って話ね
コンストラクタなどで初期化していて本来はワーニングが出るはずがないのに
途中でhoge?hage()なんてコードがあるからヌルが入る可能性があると判断されるようだ
だから?を外すと解決するんだが、それに築くのが大変って話ね
255デフォルトの名無しさん (ワッチョイ 4707-uZLY)
2023/04/19(水) 10:18:42.95ID:A9DJak9S0 そこでnullを代入してるのに気づくのが大変てことはないと思うがな
警告が出ないなら大変かもしれんけど
警告が出ないなら大変かもしれんけど
256デフォルトの名無しさん (アウアウウー Sacb-uZLY)
2023/04/19(水) 10:25:41.00ID:ozyRSzfKa たとえばUnityなんかだと暗黙の代入演算子をいじっててnullでないものがnullエラーを出すよ
コンストラクタで生成してすぐnullになるオブジェクトも作れる
そういうのを実行前に警告として教えてくれてるんだから親切以外のなにものでもないだろ
警告があれば何か問題があることにすぐ気づけるし気づいたらマウスをちょっと動かせば原因がわかる
コーディングが簡単になりこそすれ難しくなることなんかないだろ
コンストラクタで生成してすぐnullになるオブジェクトも作れる
そういうのを実行前に警告として教えてくれてるんだから親切以外のなにものでもないだろ
警告があれば何か問題があることにすぐ気づけるし気づいたらマウスをちょっと動かせば原因がわかる
コーディングが簡単になりこそすれ難しくなることなんかないだろ
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 ★2 [Hitzeschleier★]
- 【中国局長】両国関係に「深刻な影響」 首相発言の撤回要求 [蚤の市★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★3 [BFU★]
- 【維新】吉村知事「中国人観光客だけに頼るビジネスモデル変えていかないといけない」「高市総理の発言は撤回する必要はない」 [Hitzeschleier★]
- 【STARTO ENTERTAINMENT】timelesz篠塚大輝『大きな古時計』替え歌一発ギャグ「今はもう動かない おじいさんにトドメ~♪」が波紋 [Ailuropoda melanoleuca★]
- 43歳の元NHKアナ・竹中知華、発売グラビアがランキングで堂々の1位「えぐすぎる」「素晴らしい」「もっと出して」 [muffin★]
- 【実況】博衣こよりのえちえち歌枠🧪
- 【高市速報】日本人の3割「中国への武力行使に踏み切る必要がある」ANN世論調査 [931948549]
- 外務省局長、よくわからないまま帰国へ [834922174]
- ラーメン屋「日高屋が安いせいで客が来ない!日高屋はもっと値上げしろ!」 [449534113]
- 中国外務省「日中関係の悪化は高市早苗首相が原因」と名指しで強く非難。キタ━(゚∀゚)━! [153490809]
- 【朗報】日銀植田総裁「高市さんからの要望は特になかった」 [519511584]
