ふらっと C#,C♯,C#(初心者用) Part145at TECH
ふらっと C#,C♯,C#(初心者用) Part145 - 暇つぶし2ch252:デフォルトの名無しさん
19/10/24 21:14:55.46 00cf/jHw0.net
頭に0個の参照って表示されてる関数が無数にあるんですが、これ要するに全く使われてないってことですよね
全部消してしまいたい……と思ったのですが実行する中でその関数が呼び出されるような可能性ってあったりするんでしょうか

253:デフォルトの名無しさん
19/10/24 21:35:06.52 VqWeglU2r.net
リフレクションとかで呼べば参照カウントされないんじゃない

254:デフォルトの名無しさん
19/10/24 21:45:06.56 B+sGouls0.net
なんかのライブラリとかで、publicで公開してるやつとかか?

255:デフォルトの名無しさん
19/10/24 22:06:02.66 Eph2jaDU0.net
複数のパネルをドラッグドロップできるようにしたんだけど
マウスが別のパネルに重なったときにパネルがいれかわってしまうんだけど
これを防ぐにはどうしたらいい?

256:デフォルトの名無しさん
19/10/24 22:14:48.43 yaJ1dO+n0.net
>>255
「パネル」をドラッグドロップしている?
一番上または必要なパネル以外のドラッグドロップを受け付けないようにしたら

257:デフォルトの名無しさん
19/10/24 22:17:00.79 WLXJ5XGy0.net
>>255
マウスダウンで「掴む」じゃん
マウスドラッグで「移動」するじゃん
マウスアップで「置く」じゃん
ドラッグ中の処理は移動なのにどうしてマウスダウンで掴んだやつ
以外が動いちゃうん?

258:デフォルトの名無しさん
19/10/24 23:01:06.74 yaJ1dO+n0.net
マウスがパネルに触れた時点でフォーカス変わったりしているとかだろ
最低限の動きするミニマムコード使って検証する方がここで聞くより解決しやすいと思うがね
そこでわからなかったらそのミニマムコード出してまた質問したらここの人も答えやすい

259:デフォルトの名無しさん
19/10/24 23:02:09.24 00cf/jHw0.net
>>253
あーなるほどでもそんな上等な書き方出来る人が作ったわけじゃないからなさそうですね
>>254
他の似たようなソフト作る時に使ったソースコードそのまま組み込んだっぽいですね見た感じ

260:元99
19/10/25 14:57:42.75 V0o5IG+qM.net
>>252
まあ普通はコメントにするよね

261:デフォルトの名無しさん
19/10/25 22:28:16.88 7rgagi6Z0.net
List<(string, int)> list;があった場合、listの中からlist.item2が最大の要素(string, int)を得るにはどうすればいいのですか?
var l = list.Max(x=>x.Item2);みたいにしたいのですが、int型が帰ってきてしまいます

262:デフォルトの名無しさん
19/10/25 23:07:56.88 GWerdevt0.net
OrderByDescending.FirstOrDefault

263:デフォルトの名無しさん
19/10/25 23:14:44.18 5pdqBhsBa.net
>>262だと計算量のオーダーが増える
先に Max で最大のItem2 (maxItem2)を求めておいて list.First(x => x.Item2 == maxItem2) のほうがマシ

264:デフォルトの名無しさん
19/10/25 23:23:22.26 6061P7ry0.net
何度も呼ぶときウゼーから関数にしろよ

265:デフォルトの名無しさん
19/10/25 23:42:07.16 5pdqBhsBa.net
経験上、こういう汎用的すぎるユーティリティ関数を自作して多用するのはお勧めしない
個人開発ならいいけど、多人数での開発になると新しいメンバーとの間で記述方法に差異を有む原因になり、結果的に負債化していくんだよ
ダサくてもこういうのは毎回ベタに書いたほうがいい

266:デフォルトの名無しさん
19/10/25 23:48:20.10 FLPxIKHC0.net
最大値持ってるタプルが複数あったら?

267:デフォルトの名無しさん
19/10/25 23:50:57.19 j4bjfcPpd.net
>>266
逆にどうして欲しいの?

268:デフォルトの名無しさん
19/10/26 00:25:28.36 ZMkO6rZZ0.net
>>267
知らんがな

269:デフォルトの名無しさん
19/10/26 00:58:09.61 rff7tW+R0.net
>>262-265
どの方法も一見正攻法ではないように見えるため、人に教えてもらわないことには勇気を出して書けませんでした
ありがとうございます

270:デフォルトの名無しさん
19/10/26 12:56:29.17 D4rlG2Pr0.net
>>265
計算量のオーダー気にしてんだろ?
他の奴が違う書き方して増えたら大変じゃん
あ、どうでもよかった?

271:デフォルトの名無しさん
19/10/26 13:18:11.26 sfokePbj0.net
素直に
int max = list.Max(tuple => tuple.Item2);
var maxValueItems = list.Where(tuple => tuple.Item2 == max);
でいいじゃん
int に重複がない前提なら Dictionary 化した方が捗る

272:デフォルトの名無しさん
19/10/26 14:40:36.29 +20I9h0L0.net
なんかいいロガー知らない?
3つのテキストに警告・注意・情報がそれぞれ安全に吐けるロガー


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch