1 名前:デフォルトの名無しさん [2014/04/05(土) 22:08:28.72 ID:l3iN8hNI] 「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。 他のスレッドでは書き込めないような低レベルな質問。 質問者自身なんだか意味がよく分からない質問。 ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。 内容に応じて、他スレ・他板へ行くことを勧められることがあります、ご了承下さい。 なお、テンプレが読めない回答者は邪魔なので後述のC#相談室に移動して下さい。 >>980 を踏んだ人は新スレを建てて下さい。 >>980 が無理な場合、話し合って新スレを建てる人を決めて下さい。 ■前スレ ふらっとVisual C#,C♯,C#(初心者用) Part110 toro.2ch.net/test/read.cgi/tech/1388377636/ ■関連スレ C#, C♯, C#相談室 Part82 toro.2ch.net/test/read.cgi/tech/1386763696/ ■コード貼るなら↓使ってください ideone.com/
175 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 13:14:45.44 ID:HlzGISme] C#でつくられたDLLを使うときにVBだと outのやつとかうまく行かない時ある
176 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 17:00:14.97 ID:gE6F061n] VBで作られたDLLをC#から呼ぶとき インデックスつきプロパティとかどうすんだろ
177 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 18:38:59.62 ID:hEaBYDdC] VB.NetがC#より打鍵量が多いのも、コンパイル後のサイズが大きいのも、 パフォーマンスがC#より悪いのも、ヘルパーメソッド由来の妙なバグがあるのも全部事実であって偏見ではない
178 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 20:26:11.53 ID:TDgs+IDt] VB の癌は Module MS にはとっとと切り捨てて欲しい >>176 get_プロパティ名(インデックス)、set_プロパティ名(インデックス, セット値) でいける
179 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 22:13:30.39 ID:Wvay+xfF] >>170 VBのメリット、これしか見つからないな。
180 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 22:17:47.88 ID:9b5aah45] まあStrings.StrConvメソッドはC#からでも使えるんだけどな
181 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 22:38:48.86 ID:aQjOrdcV] Microsoft.VisualBasic.dllだとFileLogTraceListenerを一番よく使う
182 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 23:05:07.94 ID:gnPWMjpt] >>179 そんなことはないと思うが、2008の頃からは何を書くにもとにかく冗長という 欠点ばかりが目立つようになってしまった。
183 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 23:30:13.86 ID:aQjOrdcV] 昔からReadOnly PropertyとかAddHandler, AddressOfとかDirectCastとかそんな感じだったでしょ リフレクション多用するライブラリが増えてきて表面化しただけじゃないの 自動実装プロパティもC#にしかない時期だし
184 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 23:30:18.44 ID:O6CdnXOc] allocconsole だな
185 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 23:32:30.95 ID:Jwmg0nMc] >>182 2008からはVBチームがVB嫌いのヘジたんの傘下に入ったからね
186 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 23:59:59.59 ID:20pXoq+z] >>170 バグ生産機を使うなバカ
187 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 01:31:15.85 ID:ql05jL4b] >>186 すまん軽率だった これ見て使ってしまう奴が居ないとも限らんしな
188 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 20:30:02.51 ID:4wdRys5m] MessageBoxIconに自分の用意したbitmapを表示させるにはどうしたらいいですか?
189 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 20:44:58.88 ID:YxnFmXEY] 無理 それっぽいフォームを自分で作る 文字列を描画したときのサイズを計算してフォームの大きさ変えたりとか楽しいぞ さあ作れ
190 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 20:58:57.16 ID:nZNRS/HT] 無理ってことはないと思うけど自作した方が早いね。 そうでなくてもOS標準のはモーダルにしか出来ないしいろいろ使いづらい。
191 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 21:15:44.44 ID:DE2OqBZn] カーソルがピタット止まって気持ち悪い
192 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 21:20:16.41 ID:DE2OqBZn] 誤爆った public struct A{ public static string str; public struct B{ public static string str_b1; public static string str_b2; } public class Class{ public string c_str; } public static Class C = new C(); public static Class[] D = new D[2]{ new D(), new D() }; } こんな構造体があるとして A.B.str_b1; A.B.str_b2; A.C.c.str; A.D[0].c_str; A.D[1].c_str; foreach的な感じで値取得ってできない?
193 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 21:20:46.50 ID:YxnFmXEY] >>190 無理ってことはないと思うならやってみろよハゲ ちなみにあれMessageBox APIを呼んでるだけなんすよヅルムケが
194 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 21:35:37.91 ID:FFtq7Y66] >>193 正直、お前さんみたいな馬鹿丸出しな奴は相手にしたくない人種なんだが。 恐らくこれと同じ手法でいける。 msdn.microsoft.com/en-us/library/ms996463.aspx
195 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 21:37:47.16 ID:YxnFmXEY] >>192 それらの静的フィールドをyield return で返すIEnumerable<strign>なプロパティを書けばできるけど 意味があるかどうかはおいといて つかそれ構造体の意味なくね?
196 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 21:41:48.71 ID:YxnFmXEY] >>194 すこしは自分でコード書いてみたら? 同じ手法でいけるって……全然試してないでしょあなた
197 名前:デフォルトの名無しさん [2014/04/24(木) 21:43:57.76 ID:vQpzgEp0] >>192 foreach使うための、インターフェースの実装はわかりますよね? あとは、イテレータ使えばできるはずです。
198 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 21:49:14.36 ID:VsJIW2Qh] >>196 馬鹿だろお前。 だったらてめえでやれ馬鹿。
199 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 22:02:34.00 ID:dPj9fjlZ] メッセージボックスもウインドウだから、フックかければ改造はできる。 ただ、意味はないからやらないだけだ
200 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 15:25:09.99 ID:IiOsF4m2] 昔はC#からEXCEL呼ぶのがとてつもなく面倒だったから、VB使う余地があったんだけどね
201 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 20:53:42.84 ID:1OgLRHsj] >>200 オートメーションは今でもVBの方が向いてるよ。 Option Strict Offの唯一の見せ場といってもいいぐらい
202 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 20:59:41.66 ID:H8Us4HAR] >>201 つdynamic
203 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 21:05:02.54 ID:OpA3+M3d] dynamicとオプション引数でもう完全に遜色なくなったねー
204 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 21:10:59.66 ID:H8Us4HAR] あとrefパラメータへの値渡しな
205 名前:デフォルトの名無しさん [2014/04/25(金) 21:18:49.00 ID:E6t4nrBH] >>202-203 いや、例えばRange.Valueをdoube[,]として出し入れする、なんて芸当はVBしかできない。
206 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 21:27:17.50 ID:BeYqZeZk] それエラーチェックをサボってるだけでは
207 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 22:19:49.65 ID:+sbVSSo6] 激しくどうでも良いことだけど、Excel形式で出力するライブラリは沢山あるのに Word形式で出力できるライブラリが殆ど無いのが納得いかない。
208 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 22:32:43.08 ID:v98LkHcr] 2とか知らないけど発売してるの
209 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 23:05:26.63 ID:K/dO+JDF] そろそろ初心者から脱出したいんですけど、どういうアプリを作ればいいでしょうか? 連番画像ダウンローダー、目覚ましなどは作りましたが、次に作るものが思い浮かばないです・・・
210 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 23:15:10.41 ID:BeYqZeZk] IQueryable
211 名前:デフォルトの名無しさん [2014/04/26(土) 01:10:31.85 ID:L7zgrAvH] C#って何が出来れば上級者なの?
212 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 01:12:25.53 ID:EJb9DXTR] 作りたい物をきちんと作れるなら
213 名前:デフォルトの名無しさん [2014/04/26(土) 01:41:03.89 ID:fIjhv7f7] >>209 擬似ウイルス
214 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 07:48:18.18 ID:tBhXDM1B] 足し算する計算機を作った 俺はもうC#上級者
215 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 09:57:25.18 ID:6xIFFq9Q] >>209 画像レタッチソフト
216 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 12:06:32.30 ID:we+cBXG7] >>209 マクロにC#を使える軽量高機能テキストエディタ
217 名前:デフォルトの名無しさん [2014/04/26(土) 12:39:09.88 ID:4Y2pKqPs] /// <summary> /// 指定したmdbファイルに対してSQLを実行します。 /// </summary> /// <param name="sql">実行するSQL文です</param> /// <param name="dataSource">mdbファイルの絶対パス</param> /// <returns>0:正常終了 1:dataSource未設定 2:SQL文がない -1:システムエラー</returns> こういうコメントを、関数仕様書のようにまとめる事ができる お勧めツールはありますでしょうか?
218 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 12:51:59.56 ID:Qdi0GyvQ] 以下、たかがサンプルに対する本筋から逸れたどうでもいい突っ込みをどうぞ↓
219 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 13:04:22.85 ID:EJb9DXTR] >>218 1つの関数にopenからsql実行まで全部いれないでもうちょっと別けろよ
220 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 13:14:14.44 ID:yjIemKHI] Sandcastle
221 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 13:26:01.94 ID:Fm5sej5/] returnsの書き方に違和感
222 名前:デフォルトの名無しさん [2014/04/26(土) 13:49:19.87 ID:4Y2pKqPs] >>219 openからsql実行まで一連の処理を一つの関数にまとめていると 何か不都合が出てくるのでしょうか? なるほど、という不都合が。
223 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 15:32:06.24 ID:rj2lEW1Q] エラーなら例外使うべきだな
224 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 15:36:25.19 ID:Qdi0GyvQ] どうですか? 笑えないほど予告通りですね
225 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 15:38:21.79 ID:ZzzaXJVH] むしろチミが召喚したという
226 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 16:28:10.91 ID:we+cBXG7] >>220 で答え出てた >>222 File.ReadXXXなんかもあるし、これで全部賄おうって話じゃなけりゃ問題ないでしょう それより処理結果をintで返すのは誰に教わったの?そいつぶん殴ったらいいよ 処理結果なんて誰も見ない SQLがnullだった場合?呼び出す側はこれnullかも・・・って思いつつ呼び出さないよな、だったら事前チェックするから 想定してないのにnullって言われてもどうしようもない だから対処できるメソッドまで例外を投げるんだよ、回復とか通知とか出来るところまで ArgumentNullExceptionを投げるようにして、例外説明用のタグもあるからそれ使おうか
227 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 16:32:22.76 ID:lFCRVMF1] SQL実行しといて行数すら返さないってINSERT専用なの?
228 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 16:42:25.86 ID:Cr6T5VXg] おしっこも出るよ(´・_・`)
229 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 17:17:16.99 ID:Gwme6n+H] >>226 >処理結果なんて誰も見ない それを言うなら、呼び出したメソッドが例外投げるなんて「誰も想定しない」 とも言えるわけでどっちもどっちだと思うよ。 むしろエラーコード方式の方が、そのメソッドではエラーが発生しうることをコード上で 明示できる分優れているとすら言える。 ただ>>217 はエラーコードに今時マジックナンバーを使ってる点は問題。 そこはenumか例外オブジェクトを返すようにした方がいいと思う。
230 名前:デフォルトの名無しさん [2014/04/26(土) 17:36:23.19 ID:19vcZYji] C#に限った話ではないのかもしれないけど 静的ではないクラスの中に定義したメソッドは そのクラスのインスタンスを作成するたびに メモリ上に展開されるの? だとしたら 主にデータを保持するために使うクラスには出来る限りメソッドを定義しないようにして メソッドはそれを提供する専用のクラスに分割して書いたほうが良いの? インスタンスの量が増えてくるとメモリの使用量が気にならないかなぁ・・・と まぁC#でメモリの使用量なんて気にしても仕方ないのかもしれませんがよろしくお願いします.
231 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 17:40:40.90 ID:9En+Yllw] ポインタしかもたんだろ
232 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 17:41:26.63 ID:lFCRVMF1] んなわけないだろ
233 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 18:00:36.35 ID:oIIaUmxU] OOP言語(というか実行環境か)でインスタンスごとに独立した実行コードが 割り当てられるような間抜けな実装してるものなんてあるのか? 誰が考えてもありえない話としか思えないが
234 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 18:04:16.55 ID:Qdi0GyvQ] vtableでくぐれ
235 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 18:14:29.64 ID:lFCRVMF1] CLRではメソッドテーブルだ
236 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 18:26:31.95 ID:NVDEc6dD] >>217 ためしにDoxygen
237 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 20:31:07.43 ID:+q1cG7mf] >>229 例外オブジェクトを返す?本気?
238 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 20:34:09.18 ID:GZ073aKT] C#でTwitterクライアントを作りたくて検索したんですが情報が古かったりして出来ません オススメや参考にしたサイト等あれば教えてください、お願いします
239 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 20:37:36.64 ID:lFCRVMF1] そのライブラリーはIDが64ビット化したのに対応してないんじゃない?
240 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 20:42:52.62 ID:7/lzVZ3W] >>237 例外オブジェクトの存在価値が投げられること、ただそれだけだ思ってるのならただの固定観念。
241 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 21:15:39.82 ID:lFCRVMF1] 投げないならExceptionより軽量高速で誤解を招かない選択肢が一杯ある
242 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 21:21:36.37 ID:iOeXFZ4R] 中学生か。 そういう批判のための批判なら要らない。 軽量かどうか、誤解を招くかどうか、どちらもそれが例外オブジェクトかどうかとは無関係。
243 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 21:26:28.10 ID:lFCRVMF1] あえて使う理由は何?と聞いてるんだけど
244 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 21:31:09.99 ID:L2eR/wTD] あえて例外オブジェクトを使えなんてどこに書いてある。 俺はマジックナンバーではなくenumか例外オブジェクトを返せと書いた。 要するにただ「使える」と言ってるだけだ。 2chで言ってもしょうがないが本当中学生じみた幼稚な奴だな。
245 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 21:39:05.02 ID:sw3OTzY3] 例外オブジェクトを戻値にする場合って呼び出し側でどうやってハンドリングするの? Go言語みたいにするの?
246 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 21:43:07.54 ID:lFCRVMF1] >>244 じゃあ聞くけどマジックナンバーと比較して例外を使うのの何が優れてると思ってるの? 型検査になるから列挙型のように選択肢も絞れないし、動作もマジックナンバーより遅いし 基本エラーを表す型しかないから成功のステータスを細分化できないんだけど エラーメッセージが付加できる点ぐらいしかメリットがないと思うよ
247 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 21:49:55.75 ID:yjIemKHI] おとなしく例外を投げろよ SQLの実行が100%成功するわけないことぐらい誰でもわかるだろ
248 名前:デフォルトの名無しさん mailto:でもgoogleのコーディング規約では‥ [2014/04/26(土) 21:53:17.85 ID:UjMxSJz5] エラーコードは戻り側で無視したらそこでおしまい 例外ならば(例外を食ったりしなければ)普通最上位までまき戻る あと例外を階層的にクラスで扱えばいろいろ便利だね ideone.com/Q5h8n1#li_GQnaUK C++、Java でも例外をとりいれているし、 エラーコードなんて過去の遺物じゃないかな
249 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 21:58:49.85 ID:Qdi0GyvQ] ここまで燃えるとは予想外ワロタ
250 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 22:09:27.96 ID:2szqXR0/] >>248 よくある議論だけど、最初から言ってるように、戻り値(エラーコード)ではなく 例外機構を使ったからって、呼び出し側がエラーを想定しなかった場合のリスクに違いはない。 上位まで戻るって、意図的にそうした場合は別として、そうでない場合に 想定されてない例外に対して適切な回復処理なんか出来るわけないでしょ。
251 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 22:19:49.67 ID:2szqXR0/] 突っ込まれる前に言っとくけど、例外を投げることの利点はプログラムを 強制終了させるパワーを持っていることで、だから回復不可能なエラー発生時には 積極的に例外を投げる意味があるけど、それ以外の場合は本来別に例外を投げることに 固執する意味なんてたいしてないんだよね。 むしろエラーコード方式だと他の値が返せなくなるからという程度の理由しかない。
252 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 22:31:03.25 ID:yjIemKHI] 詳しいエラーメッセージをのせられない 追加情報をのせられない おきた場所のスタックトレースが取得できない InnerExceptionみたいのができない エラーの発生しうるメソッドを実行するたびに戻り値を確認する必要がある 回復可能なエラーで失敗を想定しないと停止されないので、そのまま適切でない処理が続行される危険がある とか
253 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 22:52:46.46 ID:lFCRVMF1] 実行エンジンや他人のライブラリが例外を投げてくる可能性は消えないので例外処理をしないという選択肢がありえない 両方やりたいならお好きにどうぞ
254 名前:デフォルトの名無しさん mailto:sage [2014/04/26(土) 23:03:12.36 ID:+q1cG7mf] >>251 その理屈から引数nullとシステムエラー(なんだよそれ)をエラーコードで良いと判断したの? システムエラーが返された時どうしたらいいの? 俺なら無視しちゃうな
255 名前:デフォルトの名無しさん mailto:sage [2014/04/27(日) 00:00:20.60 ID:miy+8Evc] 共通関数って、最初に引数チェックしてダメだったら例外投げるよな 引数例外もしくはContractsとか使って
256 名前:デフォルトの名無しさん mailto:sage [2014/04/27(日) 00:08:02.95 ID:dy7wqSER] どうでもいいけどHttpWebRequestで404の時とかにWebException投げるのやめて欲しい もともとネットにつながらないとかホストが見つからないという時だけ投げて欲しい
257 名前:デフォルトの名無しさん mailto:sage [2014/04/27(日) 03:24:50.79 ID:oLsNKogN] >>250 想定しないエラーについては上位に投げる(キャッチしない)のがC#の基本的なエラー処理の考え方だぞ 例外投げるのは意図的に捕捉しない限り勝手に上位に伝播する 自分で処理できるエラーだけ捕捉するのはエラーコードでもいいが、それ以外を上位に投げるのにエラーコードは不向きだ
258 名前:デフォルトの名無しさん [2014/04/27(日) 10:37:42.14 ID:/A+wJ+qi] ★質問したいこと 「default(T)」は値なの?型なの? (下記のコードがうまくいかない理由は?) ★状況 public class Range<T> where T : IComparable<T> { public T Begin { get; set; } public T End { get; set; } public bool Contains(T t) { return (Begin == default(T) || Begin.CompareTo(t) <= 0) && (End == default(T) || 0 < t.CompareTo(End)); } } Begin == defualt(T)のとこで「演算子 '==' を 'T' と 'T' 型のオペランドに適用することはできません。」 とか、表示されます。 T d = default(T);とか書いてみて、もちろんエラーは出ない。 さらに、if( Begin == d ) {...}とか書いてみると、 上記のエラー。
259 名前:258 [2014/04/27(日) 10:39:06.66 ID:/A+wJ+qi] >>258 あれっ!HTMLエンコードしすぎちゃった!
260 名前:デフォルトの名無しさん mailto:sage [2014/04/27(日) 10:58:40.25 ID:jKbi43u9] >>217 blogs.msdn.com/b/sandcastle/ Visual Studio に同梱してもいいと思うんだが。
261 名前:デフォルトの名無しさん mailto:sage [2014/04/27(日) 11:05:42.81 ID:PjLFHi1Y] >>258 IComparableでも==は使えない
262 名前:デフォルトの名無しさん mailto:sage [2014/04/27(日) 11:22:51.99 ID:LKRXtHDC] Equals使えばいいんじゃねえの
263 名前:デフォルトの名無しさん mailto:sage [2014/04/27(日) 12:03:22.28 ID:LKRXtHDC] default(T)がnullだった時に落ちないようにしなきゃいけないとすると 静的メソッドの object.Equals(object, object) っていうのが使えるのかな でもdefault(T)との比較は値型のときの動作が怪しいよな
264 名前:デフォルトの名無しさん mailto:sage [2014/04/27(日) 12:13:25.13 ID:Yz145qkP] EqualityComparer<T>.Defaultとかそういうのがあって
265 名前:258 [2014/04/27(日) 12:48:31.67 ID:/A+wJ+qi] >>261-264 とりあえずこうしてみます。 >>263 案で。 みんなありがとう。 public class Range<T> where T : IComparable<T> { public T Begin { get; set; } public T End { get; set; } public bool Contains(T t) { return (object.Equals(Begin, default(T)) || Begin.CompareTo(t) <= 0) && (object.Equals(End, default(T)) || 0 < t.CompareTo(End)); } }
266 名前:デフォルトの名無しさん mailto:sage [2014/04/27(日) 13:36:23.26 ID:miy+8Evc] Contains の実装間違ってるっぽいが大丈夫? 後、default(値型)は、値型の初期値(≒0)になるよ
267 名前:デフォルトの名無しさん mailto:sage [2014/04/27(日) 21:38:52.33 ID:Q9kXtU28] Tでもnullとの==比較だけはできるんだけど Tが値型の場合は常にfalseになる
268 名前:デフォルトの名無しさん [2014/04/27(日) 21:44:11.91 ID:LKRXtHDC] マジで?! 初めて知った・・・
269 名前:デフォルトの名無しさん mailto:sage [2014/05/01(木) 08:05:57.00 ID:fMEOKfxX] Actionめちゃくちゃ便利じゃないか 古い情報のデリゲートを使ったり、イベント使ったりして 途中でわけがわからなくなってたがこれ使ってすんげーシンプルにかけるようになった
270 名前:デフォルトの名無しさん mailto:sage [2014/05/01(木) 09:52:55.43 ID:tJSAUBZt] ActionとかFuncとかは単なる作り付けのデリゲート 便利なのはラムダ式
271 名前:デフォルトの名無しさん mailto:sage [2014/05/01(木) 16:02:15.95 ID:fMEOKfxX] 今気づいたけどID出るようになってるね これでキチガイが暴れなくなったね
272 名前:デフォルトの名無しさん mailto:sage [2014/05/01(木) 16:10:50.88 ID:HVeqsQe1] ∧∧ ヽ(・ω・)/ ズコー \(.\ ノ 、ハ,,、  ̄  ̄
273 名前:デフォルトの名無しさん [2014/05/01(木) 16:53:11.58 ID:BD8IvZOZ] C#のLinqでは、Like句は使えないのでしょうか? 下のようなVB.NETプログラムをC#で書きたいのですが、 Likeは無いと怒られます。 Dim filter As String = "*マ*" 'データソースの作成 Dim animals = New String() {"ライオン", "ウマ", "ポチ"} 'LINQで処理を定義 Dim results = From animal In animals Where animal Like filter
274 名前:デフォルトの名無しさん mailto:sage [2014/05/01(木) 16:57:52.59 ID:uhEglYyp] うん、使えない
275 名前:デフォルトの名無しさん mailto:sage [2014/05/01(木) 17:01:22.57 ID:uhEglYyp] あ、Like演算自体はMicrosoft.VisualBasic.CompilerServices.LikeOperator.LikeStringメソッドで実現できるよ クエリの句として使えないだけで