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

■ このスレッドは過去ログ倉庫に格納されています
2022/06/17(金) 08:42:12.88ID:CPX9Pfyj0
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)

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

■前スレ
ふらっと C#,C♯,C#(初心者用) Part154
https://mevius.5ch.net/test/read.cgi/tech/1644416019/
■関連スレ
C#, C♯, C#相談室 Part96
https://mevius.5ch.net/test/read.cgi/tech/1639965805/
■コードを貼る場合は↓を使いましょう。
https://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/
https://docs.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
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2022/08/24(水) 19:54:41.10ID:nmRyLlKO0
>>617
[StructLayout(LayoutKind.Sequential)] struct A { public int a, b, c; }
var arr = new A[4];
var integers = MemoryMarshal.CreateSpan(ref arr[0].a, arr.Length * sizeof(A) / sizeof(int));
2022/08/24(水) 20:02:37.98ID:nmRyLlKO0
そういえばPack = 4もつけないと64bitだとズレるかもしれない
[StructLayout(LayoutKind.Sequential, Pack = 4)]
LINQでは無理でunsafeな方法しかない
2022/08/24(水) 20:12:22.20ID:qPhtrjAJ0
後出しで申し訳ないんですが、変換するフィールドを(順番も)指定できるとありがたいです。
([a, c, b, a, c, b, a, c, b, a, c, b]とか[c, a, c, a, c, a, c, a]みたいに)
.Select(x => new int[]{x.a, x.c})的な書き方が出来ると理想ですが流石に無いですかね。
2022/08/24(水) 20:15:59.32ID:nmRyLlKO0
そういえばLinqで普通に出来そうだな
Linq使わない統一連合教徒だから俺には答えられないが
2022/08/24(水) 20:16:01.84ID:iNTQq2dx0
array.SelectMany(x => new[] { x.a, x.c }).ToArray();
でいいんじゃね
2022/08/24(水) 20:30:34.31ID:qPhtrjAJ0
>>622
まさにそれです!
回答くださった方々どうもありがとうございます。
これで行数を1行減らすことができます。
624デフォルトの名無しさん (スップ Sd9f-iKtP)
垢版 |
2022/08/24(水) 21:36:20.50ID:0l93CVPkd
こんなことをここで聞かないとわからないような奴は分かりやすいコードを書けよ
自分の力で考えられないようなコードを書くな
2022/08/25(木) 00:59:42.03ID:vPMqjAT50
最初からLINQでって言ってるのにトンチンカンな解答してる奴もいるし、動物園レベルだなw
2022/08/25(木) 02:55:36.04ID:7cFZJz/G0
そのケースでLINQを使うのがそもそも間違い
2022/08/25(木) 07:54:14.97ID:S/wpzj9c0
>>626
なんでよ?
LINQが最適解じゃん
2022/08/25(木) 08:13:42.56ID:ADCzm4mL0
>>622みたいなのって元の配列の順序通りに出るの保証されてるのだっけ?
2022/08/25(木) 08:13:52.19ID:7cFZJz/G0
最初の質問は、「int型配列に直接変換」だからな
それはLINQでは出来ない(コピーが発生する)ので >>618 の時点では回答は間違ってないんだよ
>>620 で後付けで順番指定とか言い出したから、結果的にLINQで良くなっただけ
630デフォルトの名無しさん (アウアウウー Sa63-8SLj)
垢版 |
2022/08/25(木) 08:40:31.55ID:8gLSla0ra
>>613
GC言語だから向いてはいない
が、生産性が高いから、ある程度の遅延が許される案件なら悪くない
2022/08/25(木) 09:01:18.64ID:Kj4JFaopa
>>628
保証されてる
2022/08/25(木) 09:02:50.00ID:Kj4JFaopa
>>629
「配列に変換する」だから間違ってるぞ
2022/08/25(木) 09:13:18.48ID:Kj4JFaopa
>>630
GCはメモリが不足しないと発生しないからメモリを大量に使わないなら大丈夫
クラスの代わりに構造体を使うなりGC.Collectを適切な位置に挟むなりして抑制することもできる
今時メモリが不足することもないけどあってもこれで大概どうにかなるな
2022/08/25(木) 09:17:03.96ID:lqL0IkJn0
>>629
まぁ最初はフィールド順固定みたいな雰囲気だったから「なら解釈変えるだけで良くね?」と思ってああ答えたがその都度順序指定したいなら無理だったな
2022/08/25(木) 09:28:28.80ID:lqL0IkJn0
SelectManyでの連結で1要素毎に不要なゴミが発生するのは教義的に許されないので超ハイパフォーマンス厨二バージョン作ってみたぜ
fixed (A* p = &arr[0]) for (A* iter = p, end = iter + arr.Length; iter != end; ++iter) Sse2.Store((int*)iter, Sse2.Shuffle(Sse41.LoadDquVector128((int*)iter), 0b11011000/*a,c,b*/)); //store先を新規配列にするなりご自由に
636デフォルトの名無しさん (ブーイモ MM0f-EEuy)
垢版 |
2022/08/25(木) 10:10:36.18ID:0VDsE7q7M
ウザっ
2022/08/25(木) 10:39:28.93ID:Kj4JFaopa
>>635
そのゴミが中でnewされてる配列のことならスタックにそのサイズのメモリが確保されてるだけだから次のループで消えてるぞ
2022/08/25(木) 10:47:17.28ID:PVmAxbmb0
メモリ操作をオプティマイズしても速度は大して改善しない
こんな無駄なことに知恵を絞るより表示とディスクI/Oと通信を如何に減らすかを検討するべきだね
2022/08/25(木) 10:55:45.96ID:EagxtJ7z0
>>637
LINQは最新.NETでも相変わらずアロケーション酷いから毎度ヒープにnewされてる
スタックだと呼び出し元関数にnew[] { x.a, x.c }を渡せないからね
2022/08/25(木) 11:08:32.96ID:Kj4JFaopa
>>639
ほんとか?
SelectManyもそこから呼び出されるラムダ式も呼び出し元に返すのはIEnumerator<int>なのに配列保持する必要ないだろ
2022/08/25(木) 11:10:27.44ID:Kj4JFaopa
.NETの最適化は中間言語実行時にされるから確かめるのはなかなか難しいけど
2022/08/25(木) 12:11:41.01ID:gHMRW/FFM
C#では普通に配列をNewするとヒープ使う
アロケーション抑えるためにようやく
ArrayPool, stackalloc, Span<T>等が整備されてきた
2022/08/25(木) 17:08:32.19ID:lqL0IkJnH
>>640
IEnumerator<int>なんだから配列保持しなくてもいいけど保持してもいい
実装はこちらに任せられてて上記のコードだと配列を選択してる訳だからそうなる
yield利用したら配列は必要なくなるけどイテレーター生成で結局アロケーションかかるのは有名な話なのでフィールド数が少ないなら配列生成したほうがマシではある

最近のC#開発陣の方向性からしたら効率的なコードに変換してくれそうなもんだけどLINQは大昔の物なのでそんな最適化はかからない
2022/08/25(木) 17:21:07.67ID:f1MDGZNHM
いや、配列である必要はないがどんな実装をしようと必ずヒープアロケーションは発生する
仮に構造体を使って実装したとしても IEnumerable<T> にキャストした時点でボックス化が発生するからな
645デフォルトの名無しさん (ワッチョイ 7f01-knfX)
垢版 |
2022/08/26(金) 22:34:55.33ID:+ZJU99dd0
>>606
すまん今更だがこの記事C#をC言語の仲間だと思ってないか?

Spectrum(IEEE会員の好み)ランキングで1位に輝いたのはPythonで、2位のCが僅差で続いています。Cを含むC言語は全体的に人気が高く、Cと3位のC++、4位のC#を足すとPythonを大きく上回っています。
2022/08/26(金) 23:08:53.56ID:294eWRoi0
> 5位のJavaと7位のJavaScriptも同様に人気があり
なんて書くようなライターだしな
言語名で判断してるのがよくわかるw
2022/08/26(金) 23:36:19.03ID:9k0mt3Rf0
人気があるという意味で一括りにしたと好意的に捉えても
「Cを含むC言語」は謎すぎるな…C#も足すな

GIGAZINEクオリティと思ったら、原文からしてそんなんだった
2022/08/26(金) 23:47:42.79ID:294eWRoi0
>>647
原文ってどこにある?
649デフォルトの名無しさん (ワッチョイ 3d5f-yNcK)
垢版 |
2022/08/27(土) 01:10:44.71ID:e8NuVESr0
Windowsのデスクトップソフトを作りたくてC#の勉強をはじめたばかりです。
教えて下さい。

私は大昔、学校でVisualBasic6というのをさわったことがあるのですが、記憶では
フォームの作成やその上にボタンを作って設置するのは、ぜんぶマウスだけでできて、
まさに「Visual」だったんですが、今はまた逆行してしまい、フォームひとつ作るのもぜんぶ
文字を書かなくてはならなくなったんでしょうか?VisualStudioというソフトをインストールしたのですが、
ぜんぜんVisualではないみたいなんですが。画面が黒くできたりしてかっこよくなってるから
そういう意味でVisualが凝ってるということなんでしょうか?

もしかしてインストールするものが間違ってるのか、C#にもいろいろな種類があるのか、とまどっています。

よろしくお願いいたします。
2022/08/27(土) 01:18:39.44ID:y0QTOZ/b0
ポトペタがやりたければ「Windows フォーム」でプロジェクトを作成してください
2022/08/27(土) 01:23:03.72ID:Q6RZ93Vy0
>>649
VisualStudioであってるけどプロジェクト作成時のテンプレートでWinForms(.NET Framework)選んだ?
コンソールアプリケーションで開始するとデフォルトではGUIプログラミングはできないよ
2022/08/27(土) 01:26:41.51ID:gUeYozmW0
まぁVCはどこがVisualだと思わなくもない
2022/08/27(土) 01:27:14.60ID:4dbci6Zp0
https://youtu.be/9Rcw9_KaqlI?t=163
654デフォルトの名無しさん (ワッチョイ 3d5f-yNcK)
垢版 |
2022/08/27(土) 03:02:22.87ID:e8NuVESr0
>>650-653
みなさま、ご親切にありがとうございます!!
プロジェクトの作成からやり直したらできたみたいです!

もう一つだけ教えて下さい。
私はこのたびの勉強開始にあたって、独習C#第五版というのを購入しました。
最新だとアマゾンに出ていたからです。C#が2月頃にバージョンアップしたそうで、その最新版に対応している本は
まだ少ないとのことでこれを選びました。

教えていただきたいのですが、明日また大きい書店に行って、Visualっぽくできるだけマウスでwindowsソフトを作る
参考になるような書籍を買ってきたいのですが、去年以前の刊行のものでもだいじょうぶでしょうか?
私のような初心者なら、最新バージョンに対応した本でなくても問題ないといいのですが。いかがでしょうか?
655デフォルトの名無しさん (スップ Sd82-GCvl)
垢版 |
2022/08/27(土) 03:15:48.15ID:Hkav7AuSd
頭悪過ぎ
2022/08/27(土) 08:20:07.20ID:hkhVjD4na
>>654
Winformsなんて古い技術の新しい書籍なんか探しても無いんじゃね
657デフォルトの名無しさん (ワッチョイ 0201-lFw7)
垢版 |
2022/08/27(土) 08:21:41.34ID:kSqAjulD0
>>654
だいたい機能拡張だからその本に書いてあることが使えないってのは無い
2022/08/27(土) 08:24:05.73ID:y0QTOZ/b0
nullableの設定だけ気を付けないといけないかもな
2022/08/27(土) 09:30:50.42ID:1ZPd3z3i0
>>656
逆に新刊はWinformsの書籍ばかり
2022/08/27(土) 09:32:08.22ID:DLOMVHR6M
>>654
まず図書館に行って見よう
そこに希望する本があるかもしれないから
2022/08/27(土) 09:36:36.17ID:DLOMVHR6M
.net6用のwinformsデザイナがいまだにクソですぐ落ちる
2022/08/27(土) 09:46:14.67ID:iGZkY2M60
.Net6のWinFormsデザイナで
カスタムコントロールを追加するとエラーが出るんですが
2022/08/27(土) 09:51:32.24ID:M3lVB/2V0
.NET5以降のフォームデザイナは作り直された奴で全然枯れてないからな
WinFormsやるなら.NET Framework安定だと思う
2022/08/27(土) 10:29:31.63ID:4Qb5g2XJ0
言うほど新刊多いか?
2022/08/27(土) 12:03:02.31ID:OJIqOhIHa
>>664
少なくとも年に1冊は出版されてる
2022/08/27(土) 12:15:48.73ID:4Qb5g2XJ0
お、おう
2022/08/27(土) 12:27:15.20ID:QSsyAny8M
interface経由で継承先のstaticメソッドを呼び出したいのですが何か方法はありますか?
用途としては、インスタンスがnullの場合等に継承先のデフォルト値を呼び出す、というものです。

public interface I{
static int Num {get;}
}
public class A : I{
public static int Num => 1234;
}
public class B : I{
public static int Num => 5678;
}
public class Sample{
public void DoSomething(I hoge){
if(hoge is null) Console.WriteLine(I.Num); // 1234 or 5678 を表示したい
}
}

C#11のinterfaceにstatic abstract、static virtualという機能があり
試してみましたがそれらの機能では実現出来ませんでした。
また、ループ中での処理を想定しているため、リフレクションは可能な限り避けたいです。
2022/08/27(土) 12:31:54.39ID:e8NuVESr0
皆様ありがとうございます。

図書館、書店とはしごしてみます。
2022/08/27(土) 12:32:43.82ID:F0S9Qfv1M
C#11触ってないから憶測で書くけど
public void DoSomething<T>(T hoge) where T : I {
にしたらうまくいきそうな気がする
2022/08/27(土) 12:34:00.79ID:ML5GGTeqM
>>667
nullなのに継承先もクソもない
コードありきではなく、何の情報に基づいてどのような結果が欲しいのか、自分の頭で仕様を整理せよ
2022/08/27(土) 12:40:08.25ID:y0QTOZ/b0
>>667
staticやめればいいのでは
何かできない理由がおありで?
2022/08/27(土) 12:58:36.79ID:Zcnrje7aa
こういうの書いてるのだいたいUnityやってるやつというイメージ
2022/08/27(土) 13:15:46.23ID:QSsyAny8M
すみません、勘違いしていたようで
根本的に別の方法で自己解決しました。
2022/08/27(土) 13:19:54.67ID:DLOMVHR6M
C#入門の新刊は季節に2冊ぐらいづつ出てた
2022/08/27(土) 14:29:04.04ID:Q6RZ93Vy0
C#は各言語の中では一番日本語Web情報充実してるから本なんて必要ないとしか思えないんだけどな
676デフォルトの名無しさん (ワッチョイ eebb-YbG/)
垢版 |
2022/08/27(土) 15:05:22.72ID:0y7BwLZN0
でもまあ、技術系ブログサイトとかはあんまり見ない方がいいだろうね
特に、スレッド、GC、謎の付け焼き刃策、デザインパターン、その辺が絡むものはやばいコードでごった返してるんじゃないかな
2022/08/27(土) 15:27:53.57ID:RGgKks5P0
カオスなコードはC/C++のが氾濫してる印象
C#もobject多用してるやつは大概ヤバい
2022/08/27(土) 17:34:08.96ID:D1BVA/yed
C#は業務系とゲーム系とWeb系が入り乱れていて個性的なコードが多い印象
Web系はわりと教科書的なコードを好む傾向だけど前2つは無茶苦茶
2022/08/27(土) 18:15:52.15ID:WqKrPeWc0
C#自体は嫌いでも無いしむしろ好きかも知れないけど
コードが冗長になる傾向が強いというか
これはjsとかでもそうだけど特に非同期だとぱっと見何やってるか分かりにくいコードが多いなぁ
awaitやasyncとかで書けるからとかメソッドチェーンだからマシとか言うけどw
2022/08/27(土) 19:23:32.38ID:DLOMVHR6M
メソッドチェーン = クソ
2022/08/27(土) 19:28:43.55ID:0Dbs3cdW0
単一行でスクロールバーがないテキストボックスやリストボックスとかでマウスをホバーすると、
ツールチップだかが表示されて、テキストボックスと位置を完全に合わせてテキストの全文を表示してくれるやつをたまに見かけますが、
それと同じ事をやりたいです。
あれはツールチップだと同じ挙動にはならないっぽいのですが、ポップアップウィンドウで自力で描画してるんでしょうか。
2022/08/27(土) 19:36:18.14ID:0Dbs3cdW0
知りたい事は.NETやgitとかでそういう便利ライブラリ的なのがあるなら教えてほしいです。
自力描画するしかないのであればがんばります。
2022/08/27(土) 19:45:26.39ID:DLOMVHR6M
全く言っている意味が通じない
WPFなのかwinformsなのか

どこに不満があるのかがわからない

どういう具合で同じ事になっていないと言ってるのかも不明だから誰にも答えようがないし
既製のもので不満を感じるなら自作するのみ
2022/08/27(土) 21:25:37.26ID:jdy+bFyx0
>>682
InputMan(有料ライブラリ)で言うところのオーバーフローチップかな?
Freeで似たようなものがあるかどうかは探したことないから知らん
685デフォルトの名無しさん (ワッチョイ 0201-lFw7)
垢版 |
2022/08/27(土) 23:16:52.50ID:kSqAjulD0
>>681
WinUI3使え!
686デフォルトの名無しさん (ワッチョイ 0201-yNcK)
垢版 |
2022/08/28(日) 00:08:14.59ID:nkxO7nQv0
>>681
WinUI3だとこれでいける
.xaml
<TextBox x:Name="ele" Text="aaaaaaaaaaaaaaaa
iiiiiiiiiiiiiiiiiii
uuuuuuuuuuuuuuuuuuu
eeeeeeeeeeeeeeeeeee" Width="100">
<ToolTipService.ToolTip>
<ToolTip x:Name="tip"/>
</ToolTipService.ToolTip>
</TextBox>
.cs
public MainWindow()
{
this.InitializeComponent();
tip.Content = ele.Text;
}

https://imgur.com/s6BXvL8.jpg
2022/08/28(日) 09:22:06.62ID:B6U0vRcz0
>>686
WinUI3でのToopTipの注意点
・折り返しを使う時は、MaxWidth="320"を必ず指定しないといけない
 指定しないと折り返しをやってくれない
・ToolTipService.Placementで、ToolTipの相対的な出現位置を指定できる
2022/08/28(日) 09:30:02.66ID:R+9zdn/R0
Visual Studio 2022でWindowsフォームを扱えるのはC#だけですか?
2022/08/28(日) 09:45:39.71ID:uUcbqhud0
扱えるってのがフォームデザイナを使えるかって意味なら、VB.NETも使える
GUIを自分でコーディングするなら、理論上はWindows上で.NETのライブラリが呼び出せる言語なら全て扱える
デザイナ無しだと、面倒すぎてやってられんけど
2022/08/29(月) 00:16:51.32ID:Rm8LZ6WJ0
681です。
>>683
WinFormです。環境を書く必要がありましたねすいません。
>>684
まさしくそれです。
名称がわからなかったので非常に助かりました。ありがとうございます。
2022/08/29(月) 06:23:28.13ID:yi8ems0xd
ACCESSのようなローカルDBに接続する場合、ソフト起動してる間は繋ぎっぱなしにするほうがいいんでしょうか?
それとも処理の度に接続切断を繰り返ししたほうがいいんでしょうか?
2022/08/29(月) 08:41:53.87ID:5N7ZaELzM
そんなのどうせ同時に一人しか使わないだろ?
どっちでもいい。コネクションプール云々は複数人から同時に頻繁にリクエストがくるようなサーバーの話だ。
コネクションを共有する場合は毎回繋ぎ直すのに比べて正しく動かすために考慮すべきことが若干増えるから、
そんな質問をしているレベルなら毎回繋ぎ直したほうが無難。
2022/08/29(月) 08:46:32.48ID:Apc5REiyM
>>691
accessのdbは繋ぎっぱなしにしていると壊れるってよく聞くな
2022/08/29(月) 09:01:35.10ID:5dAad4gs0
つかアクセス使うなw
2022/08/29(月) 09:33:19.38ID:ccuXYO1Zr
Accessがすでに業務上存在しちゃってて、ラクに処理とか自動化とかしたいからc#使うのかもしれん

知らんけど
2022/08/29(月) 09:36:25.52ID:5dAad4gs0
むしろC#使わなくても楽に処理とか自動化するためのAccesなんじゃねーの?
VBA抜いたらAccesに価値なんてないと思うがVBA使わないなら別のDBに移行すりゃいいんじゃないかなあ
697デフォルトの名無しさん (オッペケ Sr51-P/22)
垢版 |
2022/08/29(月) 10:08:27.01ID:MLr1TOpOr
https://tech-and-investment.com/control-form-1/
ってLollipopに入会させるためのネタかな?
間抜けなのでコメントしようとしたのだが。
2022/08/29(月) 10:25:54.36ID:5N7ZaELzM
組込系なんてこんなもんでしょ
2022/08/29(月) 10:30:17.30ID:9hZB97v8a
>>697
明らかに広告のためのページだけど何をコメントしようとしたの?
700デフォルトの名無しさん (ワッチョイ a9e5-6Yq+)
垢版 |
2022/08/29(月) 11:30:01.09ID:oh50Zakl0
クラスファイルを自動生成してくれるgRPCを使おうとcsprojに下記の行を追記したら
Systemの参照どころかStringすら全て見つかりませんと出てきました。

<ItemGroup>
<Protobuf Include="Protos\test.proto" GrpcServices="Client" />
</ItemGroup>

どのような原因が考えられるでしょうか?
2022/08/29(月) 12:22:49.43ID:iq4CimM1M
つーか特別な理由が無ければ基本的に繋ぎっぱなしはしない
Connectionオブジェクト都度Newしようが、プロバイダがコネクションプール管理してるからよろしくやってくれる
2022/08/29(月) 12:29:19.63ID:jYU6zLSra
スタンドアローンならSQLiteがいいね
703デフォルトの名無しさん (ワッチョイ 69ad-JjaS)
垢版 |
2022/08/29(月) 13:06:55.49ID:Ov0jurSb0
【火葬場】 ブースター接種でフル稼働 【葬儀株】
://rio2016.5ch.net/test/read.cgi/sousai/1651730253/l50
704デフォルトの名無しさん (ワッチョイ 8689-P/22)
垢版 |
2022/08/29(月) 16:23:45.64ID:Wh5OZtXm0
>>699
FormBorderStyle=FixedSingle と
MaximizeBox=False だけで良くね?と。
2022/08/30(火) 20:02:06.75ID:hAK39RORr
Cシャープから10年以上離れてたけど今はforやforeachじゃなくLinq使うのが主流なんですか?
706デフォルトの名無しさん (ブーイモ MM4d-zHxe)
垢版 |
2022/08/30(火) 20:04:10.21ID:qpF8Q26TM
ループ書いたら負けた気がする
707デフォルトの名無しさん (ワッチョイ 82ad-p8/s)
垢版 |
2022/08/30(火) 22:57:36.94ID:F66FctjD0
>>705
主流とか無いよ
適材適所
2022/08/30(火) 23:34:45.92ID:Oc5tPAyGM
>>705
一時期入門したてのゆとりが増えてそう主張してたけど
最近は慣れてきたみたいでキレイに消えた

適材適所だと体感したらしい
2022/08/31(水) 00:13:09.28ID:9cS5A88o0
でも自然な範囲ならLinqのほうが見やすいわ

まあforeachとパフォーマンスで取捨するのは変わらんし
あまり凝った処理をLinqでやるのは不幸になりやすいと思ってるし、そも設計が()
2022/08/31(水) 00:17:44.10ID:V35Yqsqy0
Linq慣れとけばSQLもほんの少しだけ取っつきやすくなる
2022/08/31(水) 00:28:02.06ID:llX6lKGm0
Linqをウォッチウィンドウに入れるとラムダ式はダメって怒られるんですがLinqのデバッグって皆さんどうやってますか?
2022/08/31(水) 01:04:24.06ID:Ycd3gXUM0
Linqのメリット:処理がすっきりしていて見やすい、意味が明確
Linqのデメリット:Linqを知らないと何やってるかサパーリ
結論:Linqアンチは馬鹿
2022/08/31(水) 01:18:25.02ID:OMPKcHO/0
極力 for文は使わないように心掛けてる
2022/08/31(水) 01:22:55.36ID:Sd5y8jvB0
とある理由で128bit変数を使いたいと思います。
.NET7ではSystem.Numerics.Int128があるみたいですが、
.NET6以前では手はないでしょうか?
2022/08/31(水) 01:47:58.73ID:b1fDOVx80
弟子丸じゃダメなの?
2022/08/31(水) 01:52:38.87ID:DMniOJU7a
>>715
あざます。ゲームを作ってるのですがbit演算で使いたいのです
2022/08/31(水) 01:54:00.40ID:DMniOJU7a
Int128は間違いでUint128です
2022/08/31(水) 03:27:40.79ID:Vvk0HldG0
何故128bit変数を使いたいのか?理由が全く無い
普通にulongを2つで十分では?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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