1 名前:デフォルトの名無しさん mailto:sage [2014/04/20(日) 08:07:52.10 ID:tLxbFHYI] 前スレ C#, C♯, C#相談室 Part82 toro.2ch.net/test/read.cgi/tech/1386763696/ Visual Studio 2010 Express 他 www.visualstudio.com/downloads/
2 名前:デフォルトの名無しさん mailto:sage [2014/04/20(日) 11:53:40.75 ID:X23Clxno] >>1 乙 > Visual Studio 2010 Express 他 そろそろ 2013 にしてもいいかと
3 名前:デフォルトの名無しさん [2014/04/20(日) 21:32:16.44 ID:ekNgbe08] 初学者はExpress for windows desktopが正解だっけ
4 名前:デフォルトの名無しさん mailto:sage [2014/04/20(日) 22:12:26.60 ID:PF/kKHEc] >>1 乙
5 名前:デフォルトの名無しさん mailto:sage [2014/04/20(日) 22:30:23.93 ID:NkZ8yLaE] 他って何があるの?
6 名前:デフォルトの名無しさん mailto:sage [2014/04/20(日) 22:35:19.76 ID:pm6pQF/U] Express For Webの方が段違いに高機能だよ For Windows Desktopからテンプレートを抜いてExpress For Webで使うのがベスト
7 名前:デフォルトの名無しさん mailto:sage [2014/04/21(月) 00:42:05.10 ID:eYdH8FCu] ライセンス大丈夫なのそれ
8 名前:デフォルトの名無しさん mailto:sage [2014/04/21(月) 11:09:25.71 ID:RwXDTsmn] >>6 kwsk
9 名前:デフォルトの名無しさん mailto:sage [2014/04/22(火) 12:28:30.66 ID:6+D188bl] 桁数が無制限の10進小数BigDecimalクラスを作って その型をメンバに持つユーザーコントロールを 作ったのですが、プロパティウィンドウで 灰色表示になっていて編集できません。 どのようにすれば、プロパティウィンドウで 通常のdecimalなどと同じように入力できるでしょうか。
10 名前:デフォルトの名無しさん mailto:sage [2014/04/22(火) 12:43:28.85 ID:XBfi1btF] TypeConverter実装してStringとの相互変換を書く、だっけ
11 名前:デフォルトの名無しさん [2014/04/22(火) 15:32:26.26 ID:LLIZuTLq] Windows8.1 UPDATEがリリースされました。 使用メモリが少なくなって1GBメモリのマシンでも動作するようなことが言われています。 アップデート(8 →8.1 →8.1 UPDATE)しようと思いますが、 c#や、.netはきちんと動作してくれるんでしょうか。 試した人います?
12 名前:デフォルトの名無しさん [2014/04/22(火) 15:34:35.91 ID:hiWtVD31] 大丈夫に決まってるだろ・・・
13 名前:デフォルトの名無しさん mailto:sage [2014/04/22(火) 15:56:53.67 ID:z8WHMXPV] 新らし物好きならば体を張って確かめるべき
14 名前:デフォルトの名無しさん mailto:sage [2014/04/22(火) 17:58:51.02 ID:UE2PHjX0] >>11 OSの実装に依存するようなクソなコードじゃなければ動くに決まってるだろ。 というのが建前
15 名前:デフォルトの名無しさん mailto:sage [2014/04/22(火) 18:04:40.83 ID:z8WHMXPV] DLLHELLへようこそ
16 名前:デフォルトの名無しさん mailto:sage [2014/04/22(火) 21:18:01.26 ID:FcSpgIwh] 8系は昔のバージョンが入ってない
17 名前:デフォルトの名無しさん mailto:sage [2014/04/22(火) 23:11:07.13 ID:WX6xzJqE] 旧バージョンも一応入れることも出来るけどね。 まぁ、4.5.1 も互換性あるらしいから一通り動かしてみて おかしな所を修正するだけでいいんじゃないかと。
18 名前:デフォルトの名無しさん [2014/04/23(水) 19:18:50.80 ID:uDUMTt2m] >>12-17 レスありがとうございました。 >>17 .net 2から、WINDOWS8の.net 4?に、ASP.NETアプリを移行して困ったことは、 接続文字列を格納したweb.confの要素を読み込むためのクラスが変わっていたことだったな。 Windows 8 も、Windows 8.1 UPDATEも、.net周辺は互換性があるとして、 アップデートやろうかな。でも、テスト環境を用意して、様子を見よう。
19 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 21:09:51.51 ID:8RvEXtF8] C#は初めてでjavaはそれなりに分かる程度なんですが、 インターフェースを実装した匿名型みたいなのってどう作るのが一般的ですか? 具体的にはSystem.Collections.Generic.IEnumerable<E>を実装したクラスを作りたいのですが、 GetEnumratorはどう実装するのが一般的なのかで戸惑っています。 javaでやった時はreturn new IEnumerator<E>(){...};みたいなのを書いていたのですが、 C#では全然違うやり方するんだろうなと思いつつもググってもみつかりませんでした。 宜しくお願い致します。
20 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 21:12:43.10 ID:9b5aah45] もうIEnumerable<T>は自前で実装せずyieldで書くわ インターフェイス一般なら普通にclass内部にネストしたprivate classで書けば良いんじゃね
21 名前:デフォルトの名無しさん [2014/04/23(水) 21:18:29.46 ID:oHxA5I3Z] インターフェースじゃなくて出来るだけdelegateとラムダ式を使うことやね
22 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 21:28:40.77 ID:Jwmg0nMc] イベントやラムダがあるからインターフェイスをネストクラスで実装するのは あんまり必要ないんだよ というかJavaが異常 ちなみにJavaみたいにネストクラスが暗黙的に外のオブジェクトの参照を持つってのも C#には無い(C#のネストクラスは全部Javaのstatic class相当) 要らないからね
23 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 21:42:39.32 ID:FOWeiF78] >Javaが異常 18年かかって反省した結果がSAM(Single abstract method)
24 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 21:52:08.48 ID:Jwmg0nMc] 反省して7年間悩んだ結果が 外のローカル変数を変更できず検査例外と相容れない代物
25 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 22:27:47.84 ID:B15hE1J5] いい加減検査例外が欠陥品だと認めろ
26 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 22:34:21.45 ID:Jwmg0nMc] >>25 公式にそう認めたよ とうとうjava.io.UncheckedIOExceptionが導入された
27 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 22:37:37.71 ID:FOWeiF78] C#の真似して失敗した劣化版enum C#の真似して失敗したクロージャもどきのラムダ C#の真似して失敗した劣化版タイプジェネリクス C#の真似したboxing C#の真似した世代別ガベコレ C#の真似した劣化版デリゲート「SAM」 失敗を認めた検査例外 もうJAVAのライフはゼロ
28 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 22:45:31.11 ID:PHSt4KVS] C#も最初はJava以下の代物だったのにこんなに立派になって・・・ ここ数年、Javaがパッとしないってのもあるんだけどさ。
29 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 22:51:46.29 ID:qZjbiDWM] >>28 こんな記事もあったぐらいでそれはない。 www.atmarkit.co.jp/fdotnet/special/java2cs/java2cs_01.html この記事のコメントで暴れてたJava信者の人今はどうしてるかねw
30 名前:デフォルトの名無しさん mailto:sage [2014/04/23(水) 23:52:36.57 ID:8RvEXtF8] いや、javaがダメだってのはそれでいいんだけど、 実際delegateとか書くにはどうしたらいいの? yieldで作ったIEnumerableを再帰したら重すぎたので 用途限定の無限リスト実装クラスを書きたいだけなんだよね。
31 名前:デフォルトの名無しさん [2014/04/23(水) 23:58:41.49 ID:oHxA5I3Z] yieldで作ったIEnumerableを再帰する ってどんなん?
32 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 00:01:23.94 ID:eSsn4FqQ] イテレータ―のベストプラクティスはこんな感じ class Hoge: IEnumerable<T> { public struct Enumerator :IEnumerator<T>{} public Enumerator GetEnumerator(){ return new Enumerator();} IEnumerator<T> IEnumerable<T>.GetEnumerator(){return GetEnumerator();} } IEnumeratorの中身が分からんなら諦めて
33 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 00:01:42.26 ID:eeIDhPaJ] 関数型っぽくいくなら static IEnumerable<object> Infinite() { while (true) yield return default(null); } var inflist = Infinite().Select(_ => 好きな値());
34 名前:33 mailto:sage [2014/04/24(木) 00:03:22.24 ID:eeIDhPaJ] default(null)はnullの間違い
35 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 00:14:49.41 ID:BDmsfKX9] >>31 IEnumerable<T> sample(IEnumerable<T> tailBase) { var e = tailBase; while(true) { var r = e.ElementAt(0); e = from v in e where Filter(v) select v; yield return r; } } かなり省いたけど大体こんな感じの。
36 名前:デフォルトの名無しさん [2014/04/24(木) 00:18:00.24 ID:7gol0BjG] foreach(var item in e) { if(Filter(item)){ yield return item; } } じゃダメなの?
37 名前:デフォルトの名無しさん [2014/04/24(木) 00:19:44.03 ID:7gol0BjG] なんかわけわかんないことかいたな return e.Where(Filter); こうか
38 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 00:53:46.66 ID:eeIDhPaJ] >>35 SelectMany
39 名前:デフォルトの名無しさん [2014/04/24(木) 11:07:28.13 ID:RPJZFTzy] Windows Live Mail に足りない機能をC#で追加したいと思っています。 そんな組み込みは可能でしょうか? Windows Live Mail自体がコンパイルされて出来上がった アプリケーションである以上、そこにC#で新たにプログラムを作って組み込みする方法とか無いのでは? とも考えています。
40 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 12:39:46.74 ID:efYzmxgq] 1から作った方が早いわな
41 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 12:45:23.88 ID:mnsZs1hI] そういう奴は「プラグイン(アドイン)追加でxxできます!!」と謳ってるから まずそこを確認するところから
42 名前:デフォルトの名無しさん [2014/04/24(木) 15:46:36.51 ID:2R+2SMgf] >>41 プラグイン開発方法とか解説しているサイトの中でオススメはありますか?
43 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 17:53:40.24 ID:YxnFmXEY] だからそもそもWindows Live Mailがプラグインを、それも.net製のプラグインを使えるアプリケーションなの?って話
44 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 17:56:03.77 ID:tDJuXksa] Outlookのアドオン市場ってそれなりにあるんでは 個人的に1つ使ってる 外国製で30ドル位だった
45 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 18:01:30.58 ID:qWN4hsJ9] いろんな本に出てくるマネージヒープってなにもの?
46 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 18:06:32.37 ID:6IsMFN2k] .NETが管理してるメモリ領域のうち、参照型の実体を置いておく領域
47 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 18:07:22.79 ID:qgz+WFm0] Outlookの開発はVSにテンプレートがあるほどだしな
48 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 18:11:00.42 ID:qWN4hsJ9] >>46 じゃあ参照型の変数(ポインタ?といっていいのか?)はどこにあるの?
49 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 18:12:15.63 ID:6IsMFN2k] ローカル変数ならスタック
50 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 18:16:31.07 ID:qWN4hsJ9] >>49 ありがとう じゃクラスのフィールドに参照型が定義されてたら?
51 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 18:18:04.70 ID:6IsMFN2k] 参照型のフィールドは参照型の実体の一部
52 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 18:25:41.81 ID:qWN4hsJ9] >>51 thx なんとなくわかった気がする、ありがとー
53 名前:デフォルトの名無しさん [2014/04/24(木) 21:09:08.42 ID:eyNeUV4V] >>43 サンクス Windows Live Mailしか使った事がなぃんだけどOutLookと比べてどっちの方が使い勝手が良いですか? もしOutLookは10年位前に使った事はある程度です。
54 名前:デフォルトの名無しさん mailto:sage [2014/04/24(木) 21:14:01.68 ID:mu7aLjm1] そりゃもうスレ違いだ ソフトウェア板かどっかに行ってこい
55 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 09:26:40.97 ID:IZttWr8m] 使い勝手の良さなんて個人の趣味で変わるしな あえて言えばテンプレ改良してマイメーラーが最強w
56 名前:デフォルトの名無しさん mailto:sage [2014/04/25(金) 11:24:17.40 ID:ooCgI5xK] Exchangeで使うなら、言うまでもなくOutlook Outlook.comで使う場合もOutlookの方がいいと思う PopやImapでしか接続しないならWindows liveメールの方が手軽でいいかな
57 名前:デフォルトの名無しさん [2014/04/30(水) 18:00:42.73 ID:DNQbhBwD] www.infoq.com/jp/news/2014/04/roslyn_oss
58 名前:デフォルトの名無しさん mailto:sage [2014/04/30(水) 18:34:06.89 ID:EzgfB9pv] データーの永続化で一番高速な方法ってなんですか?
59 名前:デフォルトの名無しさん mailto:sage [2014/04/30(水) 18:36:18.93 ID:4l7lcAfF] 君が何を永続化しようとしてるのかによって取れる方法が違うんだから 先にそれを言った方が二度手間にならなくていいぞと忠告してやる
60 名前:デフォルトの名無しさん mailto:sage [2014/04/30(水) 18:43:10.80 ID:EzgfB9pv] 深さが二段階しかないツリーデータです
61 名前:デフォルトの名無しさん mailto:sage [2014/04/30(水) 18:54:33.47 ID:I6H+jm99] neueとかいうブログの人がシリアライザのパフォーマンス比較の記事を書いてたように思ったが、 まあ気になるなら自分で確認するのが一番だよね。
62 名前:デフォルトの名無しさん mailto:sage [2014/05/03(土) 12:01:57.25 ID:HBcfi/y3] OWINてどうなの? IIS捨てれるの?
63 名前:デフォルトの名無しさん mailto:sage [2014/05/03(土) 23:34:23.75 ID:oJLHNYzb] ASP.NETのように、ビハインドでビジネス層のクラスを組み立てながら、 WEBアプリの構築は、JAVA + JSP + サーブレット でもできます。 しかし、ASP.NETのサーバーコントロールのように高度に抽象化されたデザイン用クラスは、 JAVAを使った開発でも最近はあるんでしょうか。
64 名前:デフォルトの名無しさん mailto:sage [2014/05/03(土) 23:38:27.42 ID:oJLHNYzb] あるいは、ASP.NETのオープンソース版、.NETフレームワークのオープンソース版って、実用的なんでしょうか。 最近では、c#のコンパイラがオープンソース化されたようですけど。 お金のかからない環境を構築したいとおもって。
65 名前:デフォルトの名無しさん mailto:sage [2014/05/03(土) 23:52:34.97 ID:Cu6JPOBx] >>63 Struts 1のtaglibがそのものなのだが
66 名前:デフォルトの名無しさん mailto:sage [2014/05/03(土) 23:56:18.73 ID:oJLHNYzb] >>65 本屋でパラパラページをめくりながら探していると、 Structってもはや古い技術だというような記述があったので、意外でした。 taglibは本屋では見つからなかったです。 ちょっと調べてきます。 ありがとうございます!
67 名前:デフォルトの名無しさん mailto:sage [2014/05/04(日) 02:14:44.21 ID:eMoGcgcA] どっちもStaticなグローバル変数で持ってますよね、SingletonとStaticの違いってなんですか?って質問されて上手く答えられなかった・・・
68 名前:デフォルトの名無しさん mailto:sage [2014/05/04(日) 02:40:26.63 ID:dx9xU03u] Singletonはクラスのアクセスメソッドで制限をかけることができる。 グローバル変数は誰がいつどのタイミングで読み書きするかわからない。
69 名前:デフォルトの名無しさん mailto:sage [2014/05/04(日) 02:49:01.63 ID:mi+P20vl] シングルトンは遅延初期化させたい時かな 静的コンストラクタはあまり使いたくない
70 名前:デフォルトの名無しさん mailto:sage [2014/05/04(日) 06:58:07.82 ID:IPFrsn/P] 静的プロパティだって遅延初期化できるっぺ C#的にシングルトンって意味あるのかな? プライベートコンストラクタ書きたいだけちゃうんか
71 名前:5 mailto:sage [2014/05/04(日) 07:13:45.27 ID:q7rdqljv] >>6
72 名前:デフォルトの名無しさん mailto:sage [2014/05/04(日) 07:14:36.75 ID:q7rdqljv] >>65 調べてみたところ、strutsはオワコンでした
73 名前:72 mailto:sage [2014/05/04(日) 07:20:59.25 ID:q7rdqljv] >>71 は間違いです。すみません。 >>65 ASP.NETライクに、抽象化されたUIコンポーネントでwebプログラミングするには、 JAVA標準環境(Java EE 6)+ JFS 2.0 を使うと良いようでした。 お金のかからない世界へ行ってきます。さようなら〜
74 名前:デフォルトの名無しさん mailto:sage [2014/05/04(日) 07:38:14.97 ID:rJLJvrVe] 破棄して作り直そうとする可能性がある時、静的だとメモリリークの危険が高い
75 名前:デフォルトの名無しさん mailto:sage [2014/05/04(日) 09:07:48.46 ID:eMoGcgcA] どっちにしろSingletonは利用者側からすると依存関係がわかりにくくて密結合だから、Singletonで取得するインスタンスを利用して実装しないといけないとマジでイライラするんだよね とにかくテストがやりづらい
76 名前:デフォルトの名無しさん mailto:sage [2014/05/04(日) 12:22:07.49 ID:UE0Fc6EI] グローバル変数的に使おうとするから糞コード量産することになる
77 名前:デフォルトの名無しさん mailto:sage [2014/05/04(日) 21:50:12.84 ID:F1HNpjLt] ジェネリックではまっていますが、なにかいい解説書はないですか‥‥
78 名前:デフォルトの名無しさん mailto:sage [2014/05/05(月) 09:40:10.76 ID:SGaFRyg3] >>77 Javaスレの奴か ジェネリックな比較はIComparableではなくIComparer<T>を使うべき それに伴ってstruct制約も不要になる C#のジェネリックは静的メソッドもクラスの型パラメータを引き継ぐから<S>要らん https://ideone.com/99dC5f
79 名前: ◆QZaw55cn4c mailto:sage [2014/05/05(月) 15:17:50.63 ID:CN0OEHd5] >>78 ありがとうございます.無事コンパイルができました. C#4.0 のオプション引数を使ってみようとしましたが, public static void insertNode(ref Node<T> root, T key, IComparer<T> cmp = Comparer<T>.Default) の最後のはコンパイル時定数ではない,とはねられてしまいました‥
80 名前:デフォルトの名無しさん mailto:sage [2014/05/05(月) 15:29:26.22 ID:W0z8fvUt] 「??演算子」の使用例 public static void insertNode(ref Node<T> root, T key, IComparer<T> cmp = null) { cmp = cmp ?? Comparer<T>.Default 以下略
81 名前:デフォルトの名無しさん mailto:sage [2014/05/05(月) 15:38:16.15 ID:4eyingVq] >cmp = cmp ?? Comparer<T>.Default とても頭の悪そうなコードですね 意味を考えたら不適切
82 名前:デフォルトの名無しさん mailto:sage [2014/05/05(月) 15:40:22.59 ID:fN/Sve3O] >>70 wpfのVMを書くとき、一応4.5はスタティッククラス対応しているがシングルトン使ったほうが何かと便利 4.5以前に作られたライブラリは当然のことながらスタティッククラスのVMに対応していない
83 名前:デフォルトの名無しさん mailto:sage [2014/05/05(月) 15:47:24.88 ID:TyYoKThg] 諦めてオーバーロードをもう一つ書くのがいいんだろうね でも面倒
84 名前:デフォルトの名無しさん mailto:sage [2014/05/05(月) 16:06:11.24 ID:fN/Sve3O] あと、スタティッククラスは継承使えないから何かと不便
85 名前:デフォルトの名無しさん mailto:sage [2014/05/05(月) 18:39:14.80 ID:HLVvNfN0] >>79 それコンパイル時定数なんで、仕様変更考えるならpublicでは使わない方がいいかもね
86 名前:デフォルトの名無しさん mailto:sage [2014/05/05(月) 19:04:06.57 ID:AGglXxAj] 「コンパイル時定数」に単語レベルで反応して「仕様変更」を連想した>>85
87 名前:デフォルトの名無しさん mailto:sage [2014/05/05(月) 21:43:48.00 ID:OT0COKe0] だらだらとオーバーロードかくよりオプション引数を使ったほうがすっきりするよな >>81 べつに問題あるとは思えないが
88 名前:デフォルトの名無しさん mailto:sage [2014/05/05(月) 21:52:22.83 ID:fgsSBVMQ] 引数の変更に反応してるのかな? こういう趣味の問題を所詮趣味の問題だと認識せずに吹っかける奴のが頭悪く見えるけど
89 名前:デフォルトの名無しさん mailto:sage [2014/05/05(月) 22:44:12.82 ID:AY4EFaK1] オプション変数はなんかのコード分析でお行儀が悪いって言われるらしい
90 名前:デフォルトの名無しさん mailto:sage [2014/05/05(月) 22:58:33.82 ID:SGaFRyg3] オプション引数はアセンブリパブリックなメソッドに使うとFxCopとVSのコード分析で警告出るよ 定数が呼び出し元にハードコードされてしまうから変更時に呼び出し元を再コンパイルしなきゃいけなくなる
91 名前:デフォルトの名無しさん mailto:sage [2014/05/06(火) 00:09:44.86 ID:e2Zd8aJi] シングルトンのメリットってどれも弱いよね、オブジェクト指向の利点である再利用できるってメリットを完全に破壊してる オーバーロードよりオプションが良いか悪いかは問題点がわからないから何とも言えないな 少なくとも全ての基準であるMSのソースではオーバーロードが圧倒的多数だからオーバーロード使う
92 名前:デフォルトの名無しさん mailto:sage [2014/05/06(火) 00:34:48.26 ID:tmSUYm6J] >>91 シングルトンはインターフェイス経由で使うんだよ ちょうどComparer<T>.Defaultみたいにな そうすれば差し替えができて「利用する側の」再利用性が上がる 利用する側のクラスはシングルトンの具象クラスに依存しちゃダメ
93 名前:デフォルトの名無しさん mailto:sage [2014/05/06(火) 00:36:31.71 ID:ug+nXQnt] オーバーロードだと再コンパイル要らんのか?
94 名前:デフォルトの名無しさん mailto:sage [2014/05/06(火) 00:41:20.84 ID:bRku9hxr] >>91 >再利用できるってメリットを完全に破壊 んなこたーない。おまえアホか。 >>92 まるでインターフェースにしなきゃ差し替えが出来ないような物言いだな。
95 名前:デフォルトの名無しさん mailto:sage [2014/05/06(火) 00:47:18.77 ID:48oaCWRM] >>93 3つ前のレスくらい読んだらどうだ?
96 名前:デフォルトの名無しさん [2014/05/06(火) 00:58:35.11 ID:IXzBb183] >>67 からずっと思ってたが、デザパタの用語はだいたいどれもそうだけど、 シングルトンって言葉が指すものの解釈は一つじゃなくていろんなバリエーションがあるから、 どういう意味でシングルトンって言ってるのかはっきりさせないと、傍から見て ずいぶん頭の悪い奴同士の会話に見えちゃうよ。
97 名前:デフォルトの名無しさん mailto:sage [2014/05/06(火) 01:50:22.83 ID:jzwUbQuH] そもそもデザインパターンって適材適所で使うアルアルをまとめただけのもんだしな。 それを使わないとダメとかそう言うもんでもないし。 オブジェクト指向がうんたら言う奴ってそこを忘れてルールにはまって自爆してる奴が多い印象。 まぁだから本とかにも何がなんでも型にはめようとするなと冒頭に書かれてるんだろうけど。
98 名前:デフォルトの名無しさん mailto:sage [2014/05/06(火) 01:59:59.48 ID:tmSUYm6J] デザパタなんて大半はオブジェクト指向の機能を利用したハックだろ オブジェクト指向というより関数型みたいなことをやろうとしてるものが多い
99 名前:デフォルトの名無しさん mailto:sage [2014/05/06(火) 02:08:17.42 ID:BqjYYF2K] シングルトンはスタティッククラスで代用できるから、今更面倒なシングルトンを使う必要はないって意見が多かったようだが 一々staticと、すべてのフィールドやメソッドに書くほうが面倒だと思うんだが・・・ それと再利用というならベースクラスを使い回しできるシングルトンのほうが優れているだろ スタティッククラスの利点は、知らない人に説明するのがシングルトンより楽だぐらいしか思い浮かばん
100 名前:デフォルトの名無しさん [2014/05/06(火) 03:55:27.39 ID:pzJ6+ovS] staticクラスはどういうクラスなのかがわかりやすいから 「フレームワークがstaticクラスを提供する」みたいなのが主な使用場面じゃね?
101 名前:デフォルトの名無しさん mailto:sage [2014/05/06(火) 04:32:14.78 ID:8bjutxl2] staticってそのクラス、メソッドだけで自己完結しているって意味合いがあるから 信頼できる関数として利用できる Singletonをstaticで代用なんてのは本来の使い方じゃない
102 名前:デフォルトの名無しさん mailto:sage [2014/05/06(火) 05:30:07.66 ID:ug+nXQnt] >>95 それ見て書いてるんだが?
103 名前:デフォルトの名無しさん mailto:sage [2014/05/06(火) 06:40:02.97 ID:UJ0wmmRA] >>102 おまいは関数の中身を修正したら 呼び出し側の再コンパイルが要ると思ってるのか?
104 名前:デフォルトの名無しさん mailto:sage [2014/05/06(火) 12:23:20.78 ID:5vOxwoqv] System.Diagnostics.Processが子プロセスを持っているかの判断は出来る? 親プロセスを殺す際に、親プロセスが起動させた不定の子プロセスもまとめて殺したいんだが。
105 名前:デフォルトの名無しさん mailto:sage [2014/05/06(火) 12:36:16.61 ID:q1ZxUZrt] >>93 要らんね オプション引数の省略はデフォルト値を渡すようコンパイルされる為、後で変更してもだめ
106 名前:デフォルトの名無しさん mailto:sage [2014/05/06(火) 12:51:46.80 ID:+EFNtusy] >>103 そりゃそうだな、なんかボケてたわ
107 名前:デフォルトの名無しさん mailto:sage [2014/05/07(水) 08:00:22.27 ID:DJPE+VwE] 其の程度のデメリットならオプション引数使うべきだわ
108 名前:デフォルトの名無しさん mailto:sage [2014/05/07(水) 08:09:39.64 ID:WkJIpITC] いや1か0かじゃなくてデメリットがある場合だけ使わなきゃいいでしょ 使ってはいけないのはdllのパブリック型のパブリックメンバだけだ
109 名前:デフォルトの名無しさん mailto:sage [2014/05/07(水) 09:43:01.96 ID:9Lrwf94O] >>104 W32のプロセスに親とか子って概念あるの?
110 名前:デフォルトの名無しさん mailto:sage [2014/05/07(水) 10:04:41.39 ID:MuNUQFgX] あるよー ハンドルの継承とかに使われる タスクマネージャでのプロセスツリーの終了とかもある ただマネージでは公開されてないんじゃないかなぁ CreateToolhelp32Snapshot, Process32First, Process32Next関数で親プロセスもとれるみたいだから プロセス列挙してツリー構築してやればいけるかな
111 名前:デフォルトの名無しさん [2014/05/07(水) 13:27:14.07 ID:7TKwW6oG] ラムダ式がある現在デザパタを使おうとしてる奴って単に時代遅れ デザパタありがたがってる奴なんて目も当てられない
112 名前:デフォルトの名無しさん mailto:sage [2014/05/07(水) 14:34:20.95 ID:TQOtgjUI] オブジェクト指向のそれとは違うだろうけど ラムダ式にはラムダ式のデザインパターンがあるんじゃねぇの
113 名前:デフォルトの名無しさん [2014/05/07(水) 17:39:53.54 ID:v8XT9GT6] ラムダ式があっても一部のパターンが使われなくなるだけ >>111 はデザインパターンしらんだろ
114 名前:デフォルトの名無しさん mailto:sage [2014/05/07(水) 17:58:29.45 ID:jRfFl2VD] プログラマレベル2になったところなんですよ彼は
115 名前:デフォルトの名無しさん mailto:sage [2014/05/07(水) 20:32:56.58 ID:c2xx/D15] デバッグ時にラムダ含んでるとコード書き換えられないのはどうにかなんないのかな
116 名前:デフォルトの名無しさん mailto:sage [2014/05/07(水) 22:14:53.79 ID:sNbvGfp5] デバッグ時コード書き換えの必要性を感じないんだけど
117 名前:デフォルトの名無しさん mailto:sage [2014/05/07(水) 23:01:32.27 ID:c2xx/D15] >>116 さんカッケー
118 名前:デフォルトの名無しさん [2014/05/07(水) 23:18:30.74 ID:os5r5Muw] DataGridView をFormに配置したところデータバインドをしていないにも 関わらず、DataGridView上に1行の何も値の設定されていない行が表示されしまいます。 どうすればデータバインドをするまではこれを非表示にする事が出来ますか?
119 名前:デフォルトの名無しさん mailto:sage [2014/05/07(水) 23:56:51.71 ID:DMZdYPQ9] >>115 メソッドにすればいい
120 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 00:19:41.92 ID:NDnDtFMt] shdocvw の参照ってどこから行えば良いのですか? 参照項目より探しているのですが、見当たりません。
121 名前:デフォルトの名無しさん [2014/05/08(木) 00:21:51.27 ID:/gsLR9fm] Edit&Continue(の事を言ってるんだと思うけど)ってそもそも有効な場面は かなり限られる気がする。 俺もほとんど必要性を感じたことがないな。
122 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 00:28:46.29 ID:wgDbyxsw] >>120 【VISUAL STUDIO 2010】USING SHDOCVW; の参照が出来ない場合の対処方法 know-how-tree.com/archives/296
123 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 02:36:19.31 ID:66RGGE3G] >>118 AllowUserToAddRows = false
124 名前:デフォルトの名無しさん [2014/05/08(木) 03:13:05.77 ID:LX70lqIo] >>123 サンキュー!
125 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 07:17:26.76 ID:/TlFaqSl] >>110 遅くなった。Process32Nextとかを調べてみるわ。
126 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 10:04:18.03 ID:4TK84oe8] >>115 64bit だと常にダメだけどな。 32bit環境でデバッグしてるのか
127 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 10:40:50.38 ID:rM+Ugqpp] >>126 VS2013から出来るようになった
128 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 10:52:19.49 ID:4TK84oe8] あ、そうなんだ。 自宅のWindows7に2013入れたけど、メインが2010だから知らなかった、、、 ありがとう
129 名前:デフォルトの名無しさん [2014/05/08(木) 13:56:48.08 ID:jPbn7lXq] set内で、valueとして渡されたクラスインスタンスのクローンをsetするのって、マナー違反なのかな? クラスのプロパティにsetしたクラスインスタンスが 外部で書き換えられるのが嫌だからクローンをsetしたいんだけど。
130 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 14:01:57.49 ID:vzTWemg/] メソッドの方が理解しやすいな
131 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 18:45:29.03 ID:NviPB3le] 普通にアリ 防御的コピーという非常に一般的なテクニック
132 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 20:47:40.52 ID:gk0aEWIW] >>129 それならその型そのものをイミュータブルにするか値型にすることをまず検討 すべきだと思うけどね。 配列やコレクションは別として。
133 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 21:09:23.08 ID:01rpyJ3E] 配列をプロパティにすること自体が
134 名前:デフォルトの名無しさん [2014/05/08(木) 22:43:47.23 ID:9vcPvL0x] >>113 デザインパターンっていうのは Singletonのような本質は何にも変わってないけど通ぶりたいバカがカッコつけて使うものと ラムダ式でおきかえられるもの ラムダ式を使って違う形にしたほうが良いもの の3つに分類できる つまり今使ったほうがいいものは一つもありゃせん
135 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 22:48:54.86 ID:rRrDSl0D] おっ、おう
136 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 23:12:07.48 ID:z0nVVjCj] エースコンバットの嘘字幕かな?
137 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 23:16:22.83 ID:GL2M0rb4] 覚えたばかりのものを使ってみたいだけなんじゃない? たぶんラムダ式もデザインパターンも理解してない。
138 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 00:24:12.10 ID:aGSQbVG9] ラムダ計算は俺には無理だった
139 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 01:35:48.87 ID:4s2/CMbE] 通ぶりたいバカが語っちゃんてんよ(苦笑)
140 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 03:53:38.78 ID:Wvmtqnkm] こてっちゃん
141 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 08:46:58.05 ID:Ijv/Ccl+] >>134 通ぶりたいバカはお前だろww
142 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 19:37:24.31 ID:++5Ylz+V] メンバー、変数に一々public書くのだるいよう… 省略したらpublicでいいだろこんなもん…
143 名前:デフォルトの名無しさん [2014/05/09(金) 19:38:52.20 ID:E9SfM4pV] できるだけprivateにしましょうっていうオブジェクト指向の毒が蔓延してたからね
144 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 19:39:54.12 ID:7rX/IBWU] 変数というか、フィールドをpublicにすることなんてないだろ
145 名前:デフォルトの名無しさん [2014/05/09(金) 19:42:43.70 ID:v/oaYztB] publicにする手間もっと上げたら まともなコードたくさん生まれるようにならんかな
146 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 19:45:31.17 ID:mXNWQt6t] プロパティにしてたから助かったなんて状態になるのも (場合によっては)滅多に無いけど、 公開するのは意識してやりたいからいいんじゃないの。 publicなフィールドやらプロパティやらが多いのは、 大体がカプセル化できてない似非オブジェクト指向。
147 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 19:49:33.08 ID:4s2/CMbE] まともってどういう観点で? 欠陥が少ないことをまともと評するか それとも規約をかっちり守っていることをまともと評するか
148 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 19:51:59.12 ID:Ijv/Ccl+] やっぱ基本はprivateだからな
149 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 20:40:28.22 ID:ogcBElPA] クソみたいなコードのさらにクソなprivateな部分も公開したいってどんな露出狂だよ
150 名前:デフォルトの名無しさん [2014/05/09(金) 20:45:37.38 ID:E9SfM4pV] privateなんて公開されてても使わなければいいだけの話だからな 下手なライブラリは公開メンバを少なくしようとして使いにくくなってたり そもそも出来ないことがあったり目も当てられない
151 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 20:50:03.66 ID:ogcBElPA] 一般的なルールに苦言を呈しちゅうオレかっこいいみたいな感じ?
152 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 20:50:53.52 ID:Mn4+ksrv] 「下手なライブラリ」の本来privateにすべき変数いじるとか怖くてできないんですけど
153 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 20:58:23.84 ID:4s2/CMbE] 誤字ってカッコいいよね 生き急いでる感じがしてさ
154 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 21:29:04.87 ID:eHd2TX5N] varとdynamicは確実にうんこ
155 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 21:32:51.61 ID:NDcf6f8g] >>150 これプログラマのバカの壁の一つだが、ダメグラマって本当に君みたいに思ってるらしいな。 こういうセンスの奴がGUIデザインするとButtonやTextBoxが100個とか並んでる画面を 平然と作るんだよね。
156 名前:デフォルトの名無しさん [2014/05/09(金) 21:35:50.04 ID:E9SfM4pV] var使わずに型名みたいな無意味な情報を一生懸命タイプして可読性下げてる奴って アホちゃうか? としか思えん
157 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 21:39:42.12 ID:4s2/CMbE] 皆さんなかなか凝った辞世の句を披露なさいますねえ
158 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 22:20:33.56 ID:Ijv/Ccl+] 使わなければいいだけとか…だめだこりゃww
159 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 22:32:44.73 ID:7rX/IBWU] そんなにつかいたきゃprivateでも無視してアクセスすればいいだろ わざわざ公開する必要もない
160 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 23:45:48.23 ID:WJR4c6c3] >>151 えっ、かっこわるい?
161 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 23:48:25.77 ID:WJR4c6c3] >>151 えっ、かっこわるい?
162 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 01:27:17.61 ID:g90VX2nj] >>156 もう君はVB6でVariantだけ使ってプログラム書いてれば良いんじゃないの?
163 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 01:57:42.12 ID:B1lUTN0m] なんでvarとVariantが関係あるんだ
164 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 02:43:26.46 ID:omhafWBq] ラムダ使っちゃっていいの? どうせFramework2.0で製品化するんでしょ
165 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 03:08:54.91 ID:z3D5bdCD] バリアント 打てぃ
166 名前:デフォルトの名無しさん [2014/05/10(土) 03:13:52.62 ID:KeiPU5wL] varはマイクロソフトも推薦してたろ
167 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 08:54:51.34 ID:/Dqge85C] 仕様を理解してないで無視すれば良いとか言ってる奴はいたいな。
168 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 09:52:51.72 ID:hc+7iE7K] 表計算より電卓使うことを強要する老害みたいだな 嫌だねえ、年は取りたくないものだ
169 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 10:13:19.98 ID:hc+7iE7K] referencesource.microsoft.com/#mscorlib/system/threading/Tasks/Task.cs ほぼ全て変数宣言はvar使ってますね boolとList<Task>とExceptionってのが僅かにあるか アンチvarはReferenceSource読んでるうちに憤死しそうやね
170 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 10:22:53.61 ID:Om1HfajV] >>162 ひょっとして var で宣言したら Variant みたいになんでも入る変数になると思ってるんじゃ... (w
171 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 10:35:44.40 ID:BTCa0fTB] えっ違うの?
172 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 10:38:47.96 ID:R5teS7FH] この話題定期的に出るNe! ttp://www.atmarkit.co.jp/fdotnet/csharp30/csharp30_03/csharp30_03_01.html
173 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 11:05:02.42 ID:jrUh4jRE] varはインターフェイスの時に困る
174 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 11:17:14.54 ID:hc+7iE7K] >>169 だって既定型で受けるためにException使ってるし用途次第よ 馬鹿は記憶領域が一つしかないから万能解を求め、臨機応変を考えない
175 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 11:22:46.52 ID:oHlIlrM8] (゚д゚)ハァ? 明示したいときゃすりゃいいだけの話でございましょう?
176 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 11:41:47.12 ID:R5teS7FH] >>164 シンタックスシュガー的な機能で実現されてる文法 たとえばラムダ式、var、yieldなんかは コンパイラが対応してれば対象プラットフォームが2.0でも使える 使えないのはLinqとかdynamicとかawait/asyncとか
177 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 12:00:52.40 ID:Om1HfajV] >>174 またでかいブーメラン投げたなぁ (w
178 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 13:01:29.64 ID:oljZpcA6] ま、C++11 でも auto とかあるしねえ
179 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 13:25:05.10 ID:tcPcNt/v] C++のautoは、ラムダを軽量バインドするときに必要だし、 defaultテンプレートパラメーターを使わないでテンプレートの演算結果を宣言する際に必要だから
180 名前:デフォルトの名無しさん [2014/05/10(土) 14:00:09.11 ID:hS3sE/YA] 型名は本質的な情報じゃないんだよね 変数名こそが本当の情報で 型名は付加情報としても場所を取り過ぎて本質を見えなくするだけ
181 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 14:08:31.12 ID:m/AO6ufT] >>180 それは実数や整数のように汎用性が高い型の場合にだけ言えること。
182 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 16:09:32.82 ID:70kPlgga] ハンガリアンバリバリのソースみるとイライラする
183 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 16:18:45.70 ID:70kPlgga] MSの糞SEが用途間違えたシステムハンガリアンの方な
184 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 18:31:45.83 ID:/Dqge85C] >>171 C#のvarはコンパイル時に型を推定してくれる。 何でも入るのはdynamic
185 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 19:24:38.38 ID:EnEZoBM+] varはメンバーフィールドやファンクションの引数・戻値には使えないから 無茶しようと思っても無茶できんな
186 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 19:58:09.90 ID:jrUh4jRE] dynamicは基本的には使うべきではないだろ
187 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 21:51:23.62 ID:rYs4anx5] dynamicは引数の型によってオーバーロードを動的に選択させられるのが便利 そもそも型で分岐すること自体クソではあるけど、どうしても仕方ない場合には if is並べるよりはよっぽどマシだ
188 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 22:02:24.72 ID:a9DcGAOB] dynamicはExcel制御するとき大活躍だろ? アーリーバインディングはOfficeのバージョンに依存していかん
189 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 22:39:41.83 ID:rYs4anx5] dynamicが凄いのはCOM Interopに使えたりするのがMSの独自拡張じゃないところ ちゃんとプロトコルが公開されていて、誰でも独自のオブジェクトシステムを dynamicで透過的に扱うためのバインダを作れる
190 名前:デフォルトの名無しさん [2014/05/10(土) 23:18:18.72 ID:ryDslySJ] C#で復興君を作ろうと思っています。
191 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 06:37:11.02 ID:lXX0usu0] >>187 どの場面でもifやswitchを使わないに越したことはないな。 ちなみに俺がいちばん嫌いなコードは、 if(a==true) a=false; else a=true;
192 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 07:15:58.47 ID:zdamCAAu] >>191 お前は俺か! すごく同意できるわ。
193 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 09:09:37.25 ID:r3f59Bax] >>191 幾ら何でも、そんなコード書く奴居ないだろw
194 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 09:38:55.24 ID:wSEeMjm/] a=!a で済むもんな
195 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 11:31:48.67 ID:uayAIi6x] それ以前に{}でくくらないのは嫌いだわー。 そんな事よりコメントも書かずに三項演算子の中に更に三項演算子を複数重ねるのは止めてくれ。 書いてるほうは行数減らせてノリノリで嬉しいんだろうが解読がめんどいわ。
196 名前:デフォルトの名無しさん [2014/05/11(日) 11:40:30.44 ID:qOyx0lRS] またswitchを見たら仮想関数に書き換えて 可読性や依存関係をメチャクチャにする オブジェクト指向に洗脳されたカスか
197 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 11:46:08.37 ID:ty2I7rZM] メソッドへの振り分けは別にオブジェクト指向関係ないだろ ソースコードのレイアウトの問題に過ぎない 関数ポインタ入れたテーブルで振り分けるとか太古の昔からあるわ
198 名前:デフォルトの名無しさん [2014/05/11(日) 11:48:07.86 ID:qOyx0lRS] 動作を決定する権利がオブジェクトの側にあるか オブジェクトを使う側にあるのかというのは 本当に決定的な違いなんだよ そして大半のケースでオブジェクトを使う側にないと柔軟性が確保できない オブジェクトの側で動作を規定するのは最悪の設計である場合がほとんど
199 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 11:50:35.06 ID:wSEeMjm/] ==true って最悪だよな boolean値なのにいちいち比較するとか
200 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 11:53:18.60 ID:ty2I7rZM] >>198 型による分岐をdynamic+オーバーロードに置き換える話なら 制御は使う側にあるだろ それがいいか悪いかとお前の思想はともかく
201 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 12:09:24.23 ID:9KkBQwht] >>194 俺はあえて a ^= true; と書く
202 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 12:18:23.07 ID:DD3eXZ56] >>195 三項演算子は lisp は cond 以来の由緒ある書式。 >>196 OOは正義!
203 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 12:43:02.89 ID:zdamCAAu] >>202 cond は三項に限らんし、中途半端な知識乙
204 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 14:21:05.81 ID:1r+yUbjA] ==true、==falseは見やすさ目的で十分使えるだろ
205 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 14:30:56.81 ID:9KkBQwht] >>204 それが見やすいと思うなら何か勘違いしてるんだよ。 まあ、hoge == falseは微妙かもしれないが == trueはないね。
206 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 14:31:32.41 ID:eQruSjkp] ==false は頭が疲れた時でもぱっと見でわかりやすいからたまに使う。 ==trueはあんま使ったこと
207 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 14:44:15.01 ID:1r+yUbjA] あー==trueだけの事を言ってたのか
208 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 14:48:01.46 ID:0sJXE8ur] if ( ( value == 1 ) == false ) { }
209 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 14:52:01.18 ID:wSEeMjm/] true は、代入に利用するくらいで等価比較は御法度だよ。 処理系によってはどのビットが立っているかわからないときがあるからね。
210 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 14:54:41.32 ID:mBV2CEmk] >>209 スレ違いです 労害は去れ
211 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 14:54:41.86 ID:8CXG23Kv] そんなわけないじゃん
212 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:01:00.89 ID:mJ1nU0nf] >>209 C:値1と定義 C++:true/falseの2値しか取らない Java:true/falseの2値しか取らない C#::true/falseの2値しか取らない Visual Basic 6:ビットがオール1と定義 で どの言語と間違えたの?
213 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:01:50.58 ID:Izszoovs] スレチだけど、C++だと bool a = ( b == TRUE ); なんて書いたことはあったな。
214 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:05:43.80 ID:Tv+UCCd6] >>213 はどうしようもないバカ
215 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:12:17.35 ID:DD3eXZ56] >>212 C/C++ に関していえば、 処理系は必ず true == 1 と扱うが、 ライブラリ関数の中にはそうでないものがある。ctype.h の isalpha() のようなポピュラーなものでさえそうだ。 ctype.h は C++ でも標準ライブラリ扱い >>209 の C/C++ の項は使い手に即した内容ではない役立たずだね、他は大丈夫なの?
216 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:12:24.22 ID:wSEeMjm/] bool a = b ? true : false ;
217 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:20:14.51 ID:wSEeMjm/] >>212 ある処理系で問題なくても true と比較するコード書く時点でトーシロー
218 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:22:52.49 ID:4d9sdM5b] 以下、休日の昼下がりを下らない言葉尻の取り合いでお楽しみ下さい。 なお明日は月曜日ですので、その点ご了承下さいませ。
219 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:24:47.77 ID:r0lCuLjc] ==trueが見やすいなんて言っちゃうのは変数名が原因だろ ==falseはアリかな
220 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:27:12.37 ID:8CXG23Kv] >>217 C#ではすべての処理系で問題ない
221 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:27:39.25 ID:DD3eXZ56] >>212 証拠だ、C/C++ の説明は間違っているから書きなおせ codepad.org/iVjor3ug
222 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:28:31.82 ID:03X5e1jP] なんか始まった
223 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:32:38.72 ID:bgvuJmwK] >>221 intとboolを比較したそらあかんやろ (bool)isalpha(c) == true ってせな (int)trueは間違いなく1
224 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:39:58.47 ID:DD3eXZ56] >>223 codepad.org/GZJDtw7k それもそだねえ、じゃ >>212 C の項はかきなおせ、というか C には true/false の二項対立はない。 あと VB あたりもちょっと怖いが、実際どうなんだ?
225 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:48:45.26 ID:ttO2ycsK] んなこたーない ideone.com/s5pX6s
226 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:54:49.57 ID:wSEeMjm/] ホント馬鹿だな いちいち型キャストして比較するとかながったらしすぎw
227 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:57:44.93 ID:DD3eXZ56] >>224 そうか、C99 にはブーリアンが入ったんだね、って、予約語としては _Bool じゃなかったっけ? ideone.com/bfYQxc C99 strict といいながら srict じゃないね、これは gcc 拡張?
228 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 15:59:34.63 ID:ttO2ycsK] >>227 _Boolをboolというスペルマで使用できるようにするのがstdbool.h
229 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 16:00:31.04 ID:DD3eXZ56] >>226 _Bool isalpha(int c) とか変更しなかった/できなかったからね、ま、古い言語だから仕方がない‥
230 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 16:02:36.34 ID:DD3eXZ56] >>228 thx 確認した
231 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 16:20:10.30 ID:ttO2ycsK] さて話を戻すと、c#で「==true」が意図しない動作 をすることは一応 無いのだけれど…
232 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 16:37:59.01 ID:wSEeMjm/] いまは問題なくても後々移植性に問題出たりするんだよ
233 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 16:40:41.81 ID:f0TnWCT6] >>228 誤変換? ///
234 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 16:54:14.59 ID:uayAIi6x] 相談スレっぽくなくなってしまった。自分も片棒を担いだんだが。 流れを戻すとして、char型をSystem.Windows.Forms.Keysに変換する方法ってある?
235 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 17:22:30.76 ID:8m9s6VXd] >>232 へー
236 名前:デフォルトの名無しさん [2014/05/11(日) 17:41:37.11 ID:0yrYxZ6d] 移植性を気にする奴がC#とか頭悪すぎw
237 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 17:47:01.65 ID:8CXG23Kv] >>232 いつだよw 突然仕様変更になるのか? あんなに破壊的変更嫌って文脈キーワードガンガン増やす言語が
238 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 17:58:08.19 ID:ZXeumQz3] >>234 char <-> Keysは1対1の対応じゃないから無理じゃないかなぁ 変換テーブルを自分で作っておくしかないと思う
239 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 18:43:26.19 ID:uayAIi6x] >>238 やっぱり自力でやるしかないか。コードが綺麗じゃないけど仕方が無い。
240 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 19:08:40.28 ID:rIItupz1] しかし bool? という if(xxx == true) を強要する型があるんだよね
241 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 19:15:41.89 ID:ReOxbOV9] 強要された妄想にとりつかれているんですね 困ったものです
242 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 19:24:20.20 ID:0yv5+mef] xxx ?? falseでいいんじゃね
243 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 19:31:27.95 ID:+H+hcwQY] if ( xxx.HasValue && xxx.Value ) だろjk
244 名前:デフォルトの名無しさん mailto:sage [2014/05/11(日) 19:44:28.84 ID:ESdFar+G] >>239 MSDNによると、 - Keysの値はWin32の仮想キーコードに対応している - ANSI文字の仮想キーコードはANSIコードそのまま らしいから普通に、 char ⇒ ANSIでデコード ⇒ Keysにキャスト でいけるんじゃないの? っていうかVBだとOption Strict Offにしとけば暗黙変換してくれたような気がw
245 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 07:15:26.62 ID:ACtGf3jF] >>242-243 代用で文字数増やしてどうするんだ
246 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 07:20:25.07 ID:mZu2z8hr] >>245 文字数が少ない方がいいという前提はどこからきた?
247 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 07:32:31.27 ID:vNBTKcrK] >>242 を>>243 と書くのは if(flag == true)と同じぐらい冗長だと思う
248 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 07:42:20.80 ID:vNBTKcrK] ごめん、ちょっと例えとしてよくなかった 「xxx is SomeType ? (SomeType)xxx : null;」って書くぐらい冗長 って方が俺の言いたいことに近い
249 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 07:50:33.17 ID:b2+C7k5G] nullならtrueと見做したい場合 !(flag == false), flag ?? true, !flag.HasValue || flag.Value 一貫性を考えたら??一択
250 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 07:51:50.67 ID:zZkIxMS0] 後で解読しやすく書いてくれれば文字数が多くても文句は言わん
251 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 09:44:05.52 ID:3qLmw1Qv] 一文字いくらで金額決めてるんだから一文字でも無駄にするんじゃねーよ
252 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 11:18:53.54 ID:0w5L2iBG] C++で union{ bool bl; char ch; } x; x.ch = 2; bool a = x.bl == true; ってやったらaはtrueにならなかったけど C#で [StructLayout(LayoutKind.Explicit)] struct X{ [FieldOffset(0)] bool bl; [FieldOffset(0)] byte bt; } X x; x.bt = 2; bool a = x.bl == true; てやったらちゃんとaにtureが入ったw
253 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 11:53:52.63 ID:L/eGs81n] C++にboolなんかあったんだ
254 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 12:01:58.51 ID:hkuqweKu] asmどうなってる?
255 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 12:11:54.31 ID:qgWJrp5s] >>252 x.ch=2なんでしょ? x.bl==1じゃないとtrueにならないの当たり前じゃん
256 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 12:41:13.43 ID:BCJ2/LGP] bool 知らないとかモグリかよ
257 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 13:36:11.27 ID:8MSpjbBf] マジレスすると0以外はtrue
258 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 18:16:31.09 ID:1Oc6ahzf] 蒸し返してすまんが>>162 はE9SfM4pVの発言に対する皮肉で書いたんだけどさ 勿論知っていると思うけどVariantは見えないだけで中に型情報ある物な訳で 直接型推論するのとコード上の論理的な意味合いはなんら変わらないと思うんだが。 個人的にはvarって最近は使うようにしていてコード量が減るのは確かなんだけど自分で 書いたコードならまだいいんだけども開発環境の支援が無いと読みづらくなることが 多いから手放しに良いものだとは思っていないオールドタイプなんだけど世間一般の 認識はそうでもないのかね?
259 名前:デフォルトの名無しさん [2014/05/12(月) 18:18:04.63 ID:1w9leY4l] うわあ 何だこのキチガイ怖い
260 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 18:24:32.11 ID:vIiN2rHa] C#をVisualStudioの支援なしで読むの?
261 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 18:26:54.09 ID:rRKhLlHV] >>258 > 勿論知っていると思うけどVariantは見えないだけで中に型情報ある物な訳で > 直接型推論するのとコード上の論理的な意味合いはなんら変わらない 出直してください
262 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 18:49:50.27 ID:1Oc6ahzf] >>260 GitHubみたいなのでコードレビューとかしたらそうなると思うケド? >>261 具体的にどの部分に対してのツッコミ?
263 名前:デフォルトの名無しさん [2014/05/12(月) 18:50:10.34 ID:rNMuS3MH] C#のvarって、別に読みにくくならないと思うが。同じ事を2回書かないで済むようになっているだけって認識だな。 それと、C#のvarとVBのvariantって全然ちがくね。どっちかっていうと、dynamicがvariantに近いよね
264 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 19:01:02.89 ID:lehFDRdw] varはただの糖衣構文だからね dynamicは内部的にはObjectって聞いたことあるような気がするけど
265 名前:デフォルトの名無しさん [2014/05/12(月) 19:09:08.86 ID:1w9leY4l] dynamicは動的言語的な名前でのアクセスを高速にやるために 動的なコード生成的なハックをしてるって聞いたけど VBはもともと動的言語だからvariantも素直に名前でアクセスしてるだけじゃねえの
266 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 19:09:26.04 ID:/j+EhCNv] 話の流れを読まずにレスすると >C#のvarとVBのvariantって全然ちがくね そんなことは みんなわかってる
267 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 19:11:17.79 ID:/j+EhCNv] >>265 >VBはもともと動的言語 えっ? インターフェースに基づいてメソッド呼び出しする言語なのに?
268 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 19:14:20.20 ID:OiSoC7y/] >>262 マゾいなぁ うん、オールドタイプだよあんた
269 名前:デフォルトの名無しさん [2014/05/12(月) 19:16:49.39 ID:1w9leY4l] いやいやvariantとvarの違いも分かってないキチガイが低レベルなオナニーしてるだけでしょ
270 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 19:17:33.57 ID:1Oc6ahzf] 別に俺もvar=Variantとか主張する気はサラサラない。 使い方として一緒にしちゃってない?って聞いているだけで。 >>265 C++からVariant触ってみればどういう実装かすぐわかるよ。 VBからVariantつついても内部的な型を意識しないとハマるのも一緒。 >>263 var hoge = hogeList.GetNextData(); こんなコード一行見てどんな型か想像つく? var hoge = new ObservableCollection<string>(); とかなら分かるが。
271 名前:デフォルトの名無しさん [2014/05/12(月) 19:23:06.49 ID:1w9leY4l] >>270 それはvarが悪いんじゃなくて hogeという変数名が悪いの 変数名を目立たせるためにvarがある まあhogeなんて変数名を意図的に付けなければvarを付けて可読性が下がるコードなんて作れないよ
272 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 19:37:37.98 ID:vIiN2rHa] >>262 ある程度の規模になるとどちらにせよ落として支援つけないときついな Reference Sourceみたいにメソッドだけでもたどれるとまだマシなんだけど
273 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 19:40:53.44 ID:eFwDCItY] >>271 それは一般的には話が逆だと思うよ。 一般的にローカル変数については暗号的な名前でも構わないとされているし、 その理由は、それが何者であるかは型と前後の文脈から分かるから。 もちろんvar使ってもVS使う限りインテリセンスで型はわかるし、そうでなくても メソッド名その他から型がわかるケースも多いけどね。
274 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 19:46:33.94 ID:ACtGf3jF] vaiantの凶悪なところは a =1 +"1" で aが2になる挙動だわ せめて入っている型と代入した型が異なったらエラーで止まって欲しい
275 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 19:47:28.93 ID:koOZGk+1] >一般的にローカル変数については暗号的な名前でも構わないとされているし、 (´・∀・`)ヘー
276 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 19:48:12.33 ID:koOZGk+1] VariantがクソなんじゃなくてVBがクソということでFAだな
277 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 19:52:28.17 ID:ACtGf3jF] >>276 アレでも前世代のBasicに比べたらはるかにマシなんだけどね
278 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 21:25:47.98 ID:b2+C7k5G] Roslynプロジェクトの規約だとvarは原則禁止で >>270 の後者のように右辺に型名がくる場合だけOKだよ LINQ禁止だしforeachも列挙子が構造体でないものは禁止 さすがにコンパイラだから保守的になるわな
279 名前:デフォルトの名無しさん [2014/05/12(月) 21:47:10.68 ID:oYZZ6D9M] C#の場合var使ってローカルの変数名もある程度まともにするのが流儀だと思うが LINQとか何が入ってるのかよーわからんし
280 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 21:50:13.73 ID:1hZHnOd8] リーダブルコードでは説明的な名前にしろって書いてあったな 暗号ね、どこの一般やら
281 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 21:51:28.22 ID:vNBTKcrK] Linqのクエリ形式は苦手だなぁ >>278 >foreachも列挙子が構造体でないものは禁止 これって何を危惧してのことなんだろう? 列挙中にクラスインスタンスの状態が変更されないように、とか?
282 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 21:55:10.30 ID:dBEplP4G] パフォーマンス
283 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 21:58:44.92 ID:zjVah+tY] TreeNode _1838e3376; とか宣言するのか。 目頭が熱くなってきた。
284 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:04:22.44 ID:kkPuRxjD] >>280 リーダブルコードなら、明らかな一時変数ならどうでもいいって書いてあったような
285 名前:デフォルトの名無しさん [2014/05/12(月) 22:05:14.02 ID:1w9leY4l] >>273 そもそもローカル変数の名前が暗号でいいなんて考えは論外だから 可読性というものを一度でも考えたことがあるならそんな結論にはなりようがない
286 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:05:39.18 ID:1hZHnOd8] >>284 一時変数だと分かればいい、だよ ようなじゃない
287 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:09:44.30 ID:rDnznASh] 暗号的にする意味もわからない。 手作業での難読化を強要されている可能性以外には。
288 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:10:26.89 ID:XToYxcYs] >>285 馬鹿馬鹿しくて反論する気にもなれないが、他人の書いたコード読んだことある? ローカル変数で説明的な名前が適切なケースももちろんあるが、そちらの方がむしろ例外的。 ローカル変数に説明的な命名をする人なんかいないよ。
289 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:12:16.20 ID:dBEplP4G] 俺は納品前に説明的にリファクタリングするけど
290 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:12:32.11 ID:6r4KrQ0C] 暗号「的」って暗号使うって意味じゃないでしょ kbtitとかそんな話でしょ
291 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:13:39.55 ID:1hZHnOd8] なんか話が通じない気がしてきた こりゃ駄目だわ
292 名前:デフォルトの名無しさん [2014/05/12(月) 22:14:35.51 ID:1w9leY4l] 説明的になりすぎて名前が長くなりすぎるのも好ましくないからな ひと目で見渡せる範囲で何の処理をしてるか分からないと直感的に読みやすいコードにならないから 型名を分かりやすく短くしたものが変数名になる っていうパターンが多いね俺は
293 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:16:18.20 ID:twKZ90SO] 話題になってるリーダブルコードでは、 タイプ数なんかケチるなよモダンなエディタ使ってんだろ? って書いてありました。
294 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:17:43.69 ID:twKZ90SO] auは毎回id変わるのか…。 ハゲは変わらなかったのに。
295 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:17:48.11 ID:rRKhLlHV] ANSI Cの関数みたいな感じに短縮した名前ならよく使うけども
296 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:18:26.37 ID:XToYxcYs] >>287 暗号的というのは機能を明示的に表してないという程度の意味だよ。 var fs = new FileStream(path, FileMode.Create) これをいちいち、 var fileStreamToReadWriteLog = new FileStream(path, FileMode.Create) なんて説明的な名前を付けるのはダメグラマ。 そんなの前後のコード見ればわかるし、わかるように書けと。
297 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:19:25.38 ID:1hZHnOd8] 逆に聞きたいけどそれのどこが「暗号的」なんだ
298 名前:デフォルトの名無しさん [2014/05/12(月) 22:20:33.90 ID:1w9leY4l] 意味の薄いことを長ったらしく書いていいんだとすれば varを使わず型名をいちいちかけって言うことになる 見るのが大変で直感的にわかりづらい長ったらしいコードになっていいなら varを使う理由もない
299 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:20:54.99 ID:4cnM3h7R] 暗号という言葉が利用されるところで仕事をしたことが無いんじゃないか? アクロニムって単語が出てこないんだろ。
300 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:21:26.99 ID:XToYxcYs] >>297 君みたいな非常識な奴にとっては違うんだろうねとしか言いようがない。 では何というべきなのか。 こういう場合は暗号的っていう表現を使うんだよ馬鹿。
301 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:24:32.30 ID:6r4KrQ0C] そもそもvarとかうんこって書いたの俺だけどここで話してるようなことについて言ったわけじゃないからな まぁC#スレはプログラミング言語についての議論できるようなレベルじゃないからいちいちつっこまないけど
302 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:24:43.20 ID:XToYxcYs] >>299 暗号的な命名はいつも頭辞語とは限らない。 じゃあhogeって何の頭文字なのか言ってみな
303 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:24:51.83 ID:1hZHnOd8] 普通に頭字語じゃないの すさまじいねこれは
304 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:26:17.71 ID:13D7ee2l] 子供みてえにじゃあじゃあ言い出したな。
305 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:27:54.07 ID:6r4KrQ0C] どっから引用したのか知らんけどそこはどうでもいいよ 単にその言葉の解釈について思ってたのと違ったってだけだから
306 名前:デフォルトの名無しさん [2014/05/12(月) 22:28:19.55 ID:1w9leY4l] 言葉の定義につっかかって本質の議論ができないアスペの集まりか・・・
307 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:28:28.33 ID:zZkIxMS0] 1バイトを削るのに命を賭けたり、人生でキーボードを打つ事の出来る回数が決まっている人でも無い限り 変数名は分かりやすくしてクレヨン。 あんま長ったらしいのも問題だけど、変数名や関数名から役割を普通に判断できるくらいにはして欲しい。 >>298 個人的にはvar使わない派。型名を書くことを他人に強制する事までは無いがね。 使わない理由はぱっと見で型が分からないのが嫌いだから。 使うとしてもforeachとかくらいか。
308 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:28:34.03 ID:XToYxcYs] >>304 なるほど、その幼稚な物言いが子供みたいだとは思わないんだ。 馬鹿だろお前。
309 名前:デフォルトの名無しさん [2014/05/12(月) 22:29:37.19 ID:1w9leY4l] varを使いさえすれば型名がいかに必要のない情報か実感を持ってわかるだろう 食わず嫌いはやめよう
310 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:31:20.65 ID:rRKhLlHV] 人格批判が出てきたので このお祭りもそろそろ終わりですね 俺はごく狭い範囲でしか使わないFileStreamならfsって付けちゃうな ログを書き出すような寿命の長い変数ならもうちょっと丁寧に付けるが
311 名前:デフォルトの名無しさん [2014/05/12(月) 22:33:18.65 ID:1w9leY4l] 何のファイルのストリームかが自明ならfsでいいと思うけどね
312 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:33:45.43 ID:1hZHnOd8] そもそも説明的な変数名をつけろってのは スクロールしないと意味を追えない変数は邪魔だってのが本題だから 一時変数は一時変数だと分かればいい=寿命が短いなら寿命が短いことが分かればいい ってのもそういう意味ですよ誤解しないでね
313 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 22:34:23.64 ID:dBEplP4G] Streamって大抵の場合コンストラクタやメソッドに突っ込んでおしまいだし、 スコープもusingで明示されることが多いから変数名云々の議論には全く向かないだろ
314 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 23:12:10.79 ID:4a9Ad8ki] >>300 > こういう場合は暗号的っていう表現を使うんだよ馬鹿。 使わねーよ。 使うと言うならその証拠だしなよ。
315 名前:デフォルトの名無しさん [2014/05/12(月) 23:20:41.55 ID:h67qSrzm] ArrayList は参照型なのでしょうか? ArrayList に ref を付けずに外部ファンクションに渡して値を設定しました。 呼出し元で確認すると ref をつけていないにも関わらず値が格納されていました。
316 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 23:22:00.15 ID:b2+C7k5G] むしろ何故参照型でないと思ったのか 関係ないけどArrayListは過去の遺物だから使うな
317 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 23:36:18.41 ID:XToYxcYs] >>314 繰り返すが、では何というのか。 いや答えなくていいよ馬鹿。 ja.wikipedia.org/wiki/ 命名規則_(プログラミング) こういう馬鹿ってたとえば「教科書的なサンプルコード」って表現を聞いたら教科書に書いてある サンプルコードのことだとか思うのかね。 あるいは「文芸的プログラミング」って聞いたら文学的味わい(笑)のある人語の文章で コーディングするとか思うのかね。 義務教育からやりなおした方がいいんじゃないのマジで。
318 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 23:44:24.50 ID:FPCSC9Pj] 歴史の授業よろしく過去の遺物だけ教えて 近現代史まで教えてない義務教育もどうかと思う
319 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 23:57:33.94 ID:4a9Ad8ki] >>317 根拠として Wikipedia って... 笑いとろうとしてるのか? マジで、意味はとれなくないけど、スゲー違和感あるし、アホっぽく聞こえるからな他所でしゃべらない方がいいぞ (w
320 名前:デフォルトの名無しさん mailto:sage [2014/05/12(月) 23:59:57.05 ID:dBEplP4G] 普通のWikipedia記事と出典が与太話一カ所にしか付いてない>>317 を同列に扱うのはちょっと… 無論全般的にうんこなんだけど
321 名前:デフォルトの名無しさん [2014/05/13(火) 00:05:53.91 ID:1w9leY4l] 細かいことを気にして本質が見れない奴は駄目だ プログラマはそうなりがちだから注意しろ
322 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 00:10:19.36 ID:OtWszYiC] リンクはUrlエンコードして貼れとなんども
323 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 00:27:47.73 ID:N+BzxmIn] >>321 × プログラマ ○ バカ
324 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 01:28:29.43 ID:6lHeR6ab] >>309 型名が必要ないって全く理解出来ないなぁ。C#で型を意識しないって時点でネタだろ? そもそも結局変数名短縮して書くとか言っている時点で型を意識してるんじゃないの? そんな俺俺ルール全開の話展開されてもなんか一人でコード書いている人の オナニーにしか見えないよ。 多人数で書いていたら命名規則とかをガチガチに決めない限りそんな曖昧な コードは混乱するだけだし、人のコード読んだり見せたりした事無いんじゃない? そんな事するくらいなら型名できっちり明示されていた方が間違いないだろ。 varは同じことを二回(宣言と初期化)書かなくていいって程度の話だと思うんだが それは見通しが良くなるという意味であって型に関して意味が無いという話ではないぞ
325 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 01:59:28.36 ID:VAAeDIGc] Dictionary<string, Dictionary<int, 自作クラス>> みたいなの書かなければいけなくなったときに 型名を捨てました。 でも数値は型に関わらずnValueみたいにつけちゃうかも Numberの意味で
326 名前:デフォルトの名無しさん [2014/05/13(火) 02:06:16.80 ID:SWSrJt6s] varを使うと、「変数は宣言時に初期化」が強制される ってのが一番の利点だと思っているんですけど。
327 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 02:24:37.33 ID:nxvHWi8Q] 思ってりゃいいよ。口を開くな。
328 名前:デフォルトの名無しさん [2014/05/13(火) 10:05:01.34 ID:pfvuptpJ] >>326 このスレでは>>327 の意に添わないレスは禁止されている。 以後気をつけなさい。
329 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 12:37:21.47 ID:Q2oZdJZr] >>324 使うメソッドを持ってれば実行されるから、型なんてどうでも良い。
330 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 12:58:43.04 ID:vRP8IXzs] >>326 > varを使うと、「変数は宣言時に初期化」が強制される 意味わからん。 var 無くても宣言時に初期化が必要な変数は初期化するし、不要な奴はしない。 なんにも変わらん、ちょっと書き易くなっただけ。
331 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 13:03:36.11 ID:pOysepT3] 昨日から馬鹿が多いな本当。 型なんかどうでもいい、って言ってる奴は、釣りで言ってるのでなければ 1週間後には書いた本人にも理解できないようなコードを書くタイプ。 要するに、今コードを書いている自分の頭に入っているような前提知識を持たない人から 自分のコードが可読的に見えるかどうか、っていう視点が欠如してるタイプ。 そりゃコード書いてる時にはコード上に型が明示されてなくても何も困らないに決まってる。 だってそんなの「今」コードを書いてる自分には自明だからな。 問題は「今」自分が持ってる一時記憶が失われた後でもコードが可読的かどうかのはずなんだが、 ダメグラマってこういう当たり前のことがわからないみたいね。 単にわからないだけじゃなくて、何度それで失敗してもその失敗から学習しない。
332 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 13:03:59.58 ID:Q2oZdJZr] varは宣言時に代入もしないと、型が判らないからコンパイルエラー
333 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 13:20:44.11 ID:Oq17BpUc] >>331 昼間から遊んでんなよ
334 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 15:30:35.03 ID:Bi6mCPJj] 宣言時に初期化することがメリットとは思えないなぁ。 他の言語ならともかく、C#ではvarを使わなくても、 初期化されていない可能性のある変数への参照は コンパイラが警告を出してくれるんだから。
335 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 17:02:03.84 ID:tPkiUW7x] 思わなくていい。糞みたいな口を開くな。
336 名前:デフォルトの名無しさん [2014/05/13(火) 17:07:01.01 ID:+/9sUvLU] >>331 型なんかどうでもいいって書き込みなんか無いと思います。 プログラムが読めても日本語が読めない人ですか?
337 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 17:15:21.16 ID:2bqSYurQ] >>336 >>309 型は必要のない情報 >>325 型名は捨てた ちょっと遡っただけでも二つあるんだけど日本語読めない人ですか? 同じ主張していた人は前にも同様の事を書いていたと思う
338 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 17:56:00.21 ID:RSJvu3WH] 警告じゃなくてコンパイルエラーになるから、そこは間違えようがない
339 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 17:56:15.15 ID:nxvHWi8Q] うるさい奴だな 規制も解けたし久しぶりに荒らすか
340 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 17:57:23.64 ID:fEA3lkvv] ばかばっか
341 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 18:03:59.79 ID:FaOmhydn] 玉ねぎテスト
342 名前:デフォルトの名無しさん [2014/05/13(火) 19:04:44.91 ID:P6IZAQAm] >>337 型は何よりも重要だが型名として明示する必要は無いというだけ 型は論理的な制約としてコンパイラとIDEとプログラマを助けてる ソースを読むときには意味を追うことが重要であって 型名は意味を表さないからソースに現れる必要はない
343 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 19:10:30.00 ID:I3YIR7QR] それはシステム型ガリアンがわるいのであって アプリケーション型ガリアンを使うのが正しい
344 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 20:48:39.72 ID:OtWszYiC] そもそも.netでハンガリーを使うのは不適切
345 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 21:18:49.26 ID:JYotVS6+] ハンガリーてw
346 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 21:41:54.30 ID:g7aGY/I9] 予約語varすら不要にはできないのかな 新しい識別子が突然出てきたらそこで型推論して変数定義するだけだと思うのだが
347 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 21:43:10.75 ID:/YCqdFMA] それなんてブビ6?
348 名前:デフォルトの名無しさん [2014/05/13(火) 21:45:37.20 ID:P6IZAQAm] 変数の定義なのか既存の変数への代入なのかは分からないとダメだろう 間違いの元だし
349 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 21:48:10.21 ID:g7aGY/I9] >>348 それくらいインテリセンスとシンタックスハイライトで何とでもできそうだけど
350 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 21:49:38.78 ID:2SjFSQn0] ローカル変数のスコープが絞れない無能言語
351 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 22:08:05.31 ID:RSJvu3WH] 不要にする意味がないじゃん あとでその上とか、上位スコープに同じ名前の変数定義しても警告がでないとか、スクリプト言語かよ
352 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 22:58:51.07 ID:VAAeDIGc] 紙デバッグする人とIDE活用する人の違いでしょうか
353 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 23:05:11.66 ID:OtWszYiC] 紙でデバッグってどこでビルドするんですか?
354 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 23:06:36.97 ID:6lHeR6ab] >>352 IDE活用するのは良いんだがそれに依存しちゃってる人って他人とレビューってどうやってやるの?
355 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 23:07:35.77 ID:I3YIR7QR] 最低限の構文要素は残しておかないとソース解析や支援機能が劣化する ていうか今のものですら不足
356 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 23:08:53.54 ID:2SjFSQn0] 型明示しないとコード読めない奴がレビュアーとか恥ずかしくないの
357 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 23:09:40.76 ID:OtWszYiC] レビューとか普通にソフトあるだろ TFSならたしか標準だったはずだし
358 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 23:10:10.27 ID:Gi8jm/Jb] var程度で劣化するわけないでしょ リアルタイムのエラー表示とかに比べたら全く完全に無視できる程度の処理
359 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 23:22:12.28 ID:2SjFSQn0] 型推論っていうけど実際には変数型の解決と変換チェックを省いてるわけだからむしろ高速化しそう
360 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 23:35:11.58 ID:ph3+WM+5] >>355 すみません、劣化の実例出してもらえます?
361 名前:デフォルトの名無しさん mailto:sage [2014/05/13(火) 23:42:10.85 ID:I3YIR7QR] すまん これからシアトル行きの飛行機に乗らないといけないんだ
362 名前:デフォルトの名無しさん mailto:sage [2014/05/14(水) 00:44:05.28 ID:eTwx7JM5] いまだにハンガリアンつかってるのはちょっとイケてないよね
363 名前:デフォルトの名無しさん mailto:sage [2014/05/14(水) 01:15:52.45 ID:9VDDjOUK] >>354 他人と一緒にIDE使えばいいんじゃね
364 名前:デフォルトの名無しさん mailto:sage [2014/05/14(水) 01:17:18.00 ID:OfRhuTl1] 今のトレンドは何リアンですか?
365 名前:デフォルトの名無しさん mailto:sage [2014/05/14(水) 02:34:49.11 ID:NgeMMujl] ジャンガリアン
366 名前:デフォルトの名無しさん mailto:sage [2014/05/14(水) 08:39:58.13 ID:s/uWWHxP] >>350 絞れるよ。ただ、外側と同じ名前をつけらんないだけ。
367 名前:デフォルトの名無しさん mailto:sage [2014/05/14(水) 14:25:27.66 ID:d8cAyoWU] 今どきイケてるとか言っちゃうナウでヤングなあなた
368 名前:デフォルトの名無しさん mailto:sage [2014/05/14(水) 20:16:37.22 ID:eTwx7JM5] 時代はキャメリアンよ
369 名前:デフォルトの名無しさん mailto:sage [2014/05/14(水) 20:49:19.94 ID:duQE1tkX] いやポリアンナでしょ
370 名前:デフォルトの名無しさん mailto:sage [2014/05/14(水) 21:01:07.09 ID:TjISzePW] >>366 論点理解した上で「絞る」って口語表現の解釈で争うのか? アスペかゴミかアスペのゴミだな
371 名前:デフォルトの名無しさん mailto:sage [2014/05/14(水) 21:03:19.94 ID:duQE1tkX] >>370 どう考えてもお前がアスペ
372 名前:デフォルトの名無しさん mailto:sage [2014/05/14(水) 22:57:26.14 ID:MatEjgRk] >>364 コリアンと言ってほしいんだろ?
373 名前:デフォルトの名無しさん [2014/05/14(水) 23:10:26.66 ID:hc7I7FLC] C# でフラッシュ上に描画されているボタンのクリックをする事は出来ますか? 例) YouTubeの 再生ボタン
374 名前:デフォルトの名無しさん mailto:sage [2014/05/14(水) 23:28:08.62 ID:OXjgNqNn] まっとうな方法はない できないことはないけど非常に難しく、およそ初心者向きの課題ではない
375 名前:デフォルトの名無しさん mailto:sage [2014/05/14(水) 23:30:16.49 ID:CNlUMUNV] UWSCさんにお任せした方がお手軽 どうせお手軽に稼ぐ手段にしか興味ないんでしょ?
376 名前:デフォルトの名無しさん mailto:sage [2014/05/15(木) 02:37:17.33 ID:y4EzsQr3] 4.5.1時点では各種コレクションやカスタマイズならIEnumerable<T>やIEnumerator<T>があるからインデクサ実装するメリットがパッと思いつかないな 逆にどういう時にあえてクラスにインデクサ実装するの?
377 名前:デフォルトの名無しさん [2014/05/15(木) 05:43:37.91 ID:VFnGSa+C] >>376 たしか、ElementAtはIListを実装していないクラスの場合、 インデクサを使わず先頭から一つずつ数えるとか聞いた ともかくElementAtは効率的である保証がないから ランダムアクセスが早いクラスではインデクサを実装したほうがいい
378 名前:デフォルトの名無しさん mailto:sage [2014/05/15(木) 06:46:00.89 ID:vWmJlxXD] ディクショナリとか多次元コレクションとか
379 名前:デフォルトの名無しさん mailto:sage [2014/05/15(木) 06:50:35.28 ID:PJUn3sxK] 二次元幼女のコレクションか。納得。
380 名前:デフォルトの名無しさん [2014/05/15(木) 15:32:47.39 ID:hK9NRk/t] >>375 UWSC って何?
381 名前:デフォルトの名無しさん mailto:sage [2014/05/15(木) 15:49:09.11 ID:UhbfTRYa] >>380 ググったら一発で出てくるんだが
382 名前:デフォルトの名無しさん [2014/05/15(木) 15:57:34.47 ID:hK9NRk/t] じゃ、ぐぐって
383 名前:デフォルトの名無しさん mailto:sage [2014/05/15(木) 18:09:38.25 ID:6iCpTi+Y] ぐぐりました
384 名前:デフォルトの名無しさん [2014/05/15(木) 21:16:35.16 ID:VVboE5kT] おれもググった
385 名前:デフォルトの名無しさん mailto:sage [2014/05/15(木) 21:33:42.13 ID:t3vABwGH] ぐぐってきた、なるほどね
386 名前:デフォルトの名無しさん mailto:sage [2014/05/15(木) 21:34:05.58 ID:fEMnGPTM] ぐぐってあげたよ
387 名前:デフォルトの名無しさん mailto:sage [2014/05/15(木) 21:55:32.39 ID:/wvFfuuf] 百度でも可
388 名前:デフォルトの名無しさん mailto:sage [2014/05/15(木) 21:59:03.97 ID:vWmJlxXD] 優しい世界
389 名前:デフォルトの名無しさん mailto:sage [2014/05/16(金) 18:40:47.57 ID:VAV/Ywcf] Usage of NativeWindow.AssignHandle/ReleaseHandle when unmanaged code is involved. blogs.msdn.com/b/anandgeorge/archive/2010/04/11/usage-of-nativewindow-assignhandle-releasehandle-when-unmanaged-code-is-involved.aspx NativeWindowまわりで不可解なクラッシュが発生するんだけど これ試してみようかな
390 名前:デフォルトの名無しさん [2014/05/17(土) 16:30:44.41 ID:QUUNT5cx] 福島ヤクザの恫喝のお蔭で美味しんぼが休載になってしまった・・・ そ ん な に 福 島 県 の 野 菜 が 安 全 ・安 心 と い う な ら ば 宮 内 庁 職 員 ・ 天 皇 家 に 全 て 無 料 で 提 供 し な さ い
391 名前:デフォルトの名無しさん mailto:sage [2014/05/17(土) 16:40:04.62 ID:/wPndJU8] コピペマン参上!まで読んだ。
392 名前:デフォルトの名無しさん mailto:sage [2014/05/17(土) 21:01:02.22 ID:Ii5h3iYQ] そんな事よりkeybd_eventで記号が送れないじゃないか。 入力対象がPostMessageは受け付けないしSendInputは動かないし困った。
393 名前:デフォルトの名無しさん mailto:sage [2014/05/17(土) 21:10:07.58 ID:pDUyUp0N] UIAutomationは?
394 名前:デフォルトの名無しさん mailto:sage [2014/05/17(土) 22:17:04.68 ID:Ii5h3iYQ] >>393 聞いたこと無かった。試してみるわ。
395 名前:デフォルトの名無しさん [2014/05/18(日) 03:17:11.65 ID:fAlXIwAd] 以下のコードを書いているのですが #1 の部分でたまにブラウザが閉じない場合があります。 何が原因なのでしょうか? きっちりと閉じる時は閉じますが、たまに閉じない場合があるのです。 その為現在は、 iexplorerのプロセスをむりくり消すという方法を行っています。 SHDocVw.InternetExplorer ie; mshtml.IHTMLElementCollection mshtml_ec; do { url = "maxnko.com"; ie = new SHDocVw.InternetExplorer(); ie.Navigate(url, null, null, null, null); ie.Quit(); ← #1 }while(true);
396 名前:デフォルトの名無しさん mailto:sage [2014/05/18(日) 04:22:37.98 ID:gCeF58LB] アウトオブプロセスのCOMサーバプロセスのサーバの寿命が気になるなら ・途中で手に入ったCOMオブジェクトすべてにMarshal.ReleaseComObject ・COMオブジェクト入れてた変数は全部参照を切ってGC.Collect×2 のどっちかが必要
397 名前:デフォルトの名無しさん mailto:sage [2014/05/18(日) 06:27:29.62 ID:y6C+E1dN] WaitForPendingFinalizersとSleepも入れとけ bbs.wankuma.com/index.cgi?mode=al2&namber=35188&KLOG=61
398 名前:デフォルトの名無しさん [2014/05/18(日) 11:55:53.57 ID:0kvX68pZ] maguro.2ch.net/test/read.cgi/pc2nanmin/1372918692/145 ↑ ↑ ↑ ↑ ↑ ↑
399 名前:デフォルトの名無しさん [2014/05/18(日) 17:55:09.18 ID:KNbj8c8D] 超初歩で申し訳ないのですが string[,] hoge = {{"a","b","c"},{"a","b","c"}}; のような多次元配列があるとして string[] test = hoge[0]; みたいに配列を取り出して渡すのはどうしたらいいですか?エラーがでます。
400 名前:デフォルトの名無しさん mailto:sage [2014/05/18(日) 18:14:59.78 ID:5sxTIiRh] これで我慢しろ string[][] hoge = { new[] { "a", "b", "c" }, new[] { "x", "y", "z" } }; string[] test = hoge[0];
401 名前:デフォルトの名無しさん mailto:sage [2014/05/18(日) 18:44:56.99 ID:KNbj8c8D] ありがとうござます・・ 色々な宣言方法があるんですね。
402 名前:デフォルトの名無しさん mailto:sage [2014/05/18(日) 18:54:58.24 ID:VTr3IL1L] 多次元配列 string[,] と ジャグ配列(配列の配列) string[][] は別物なんよ
403 名前:デフォルトの名無しさん mailto:sage [2014/05/18(日) 20:55:49.12 ID:eK7aomfp] インデクサで実装
404 名前:デフォルトの名無しさん mailto:sage [2014/05/19(月) 01:44:57.19 ID:iSQonB5j] string[] test = new string[6]; test[0]=hoge[0,0];
405 名前:デフォルトの名無しさん mailto:sage [2014/05/20(火) 22:50:10.77 ID:egyHbNr6] System.Collections.Specialized.OrderedDictionaryが使いづらいから genericなOrderedDictionaryを自作しようと思ったら糞面倒臭くてワロタ。 みんなどうしてるんだ?
406 名前:デフォルトの名無しさん mailto:sage [2014/05/20(火) 23:14:18.45 ID:z25AfSXU] 内部にList<T>とDictionary<TKey, TValue>を持つクラスを作った。
407 名前:デフォルトの名無しさん mailto:sage [2014/05/21(水) 03:32:42.40 ID:v/AOEN1J] OrderedDictionary ってなんのために使うの? Dictionary の中身のソートならLINQですましているけど、、、
408 名前:デフォルトの名無しさん mailto:sage [2014/05/21(水) 12:09:03.26 ID:HVPC3tHt] 互換性のために残してるんだろ。 ジェネリック版がないのがその証拠。
409 名前:デフォルトの名無しさん mailto:sage [2014/05/21(水) 17:10:09.90 ID:mq1dIck6] >>396 >アウトオブプロセス あうと・おぶ・プロセス?
410 名前:デフォルトの名無しさん mailto:sage [2014/05/21(水) 19:03:42.30 ID:ejLigrZg] そうよ。別プロセスとして起動したCOMサーバのこと。 対になる言葉もちろんin-process server. 自プロセス内でアクティベートされたCOMサーバーオブジェクトよ
411 名前:デフォルトの名無しさん mailto:sage [2014/05/21(水) 19:25:24.07 ID:bWXCPWXI] WPFのDataGridで、どの列が画面内に表示されているかを知る方法をご存知の方いらっしゃいませんか。 広いDataGridの各セルに値を表示していて、一定間隔で表示を更新しているのだけど、 表示更新を行うのを画面内に表示されている範囲だけにしたくて、現在表示されている列を知りたいのです。 どの行が表示されるかは、DataGrid.LoadingRow/UnloadingRowイベントで簡単にわかるんだけど、 列に関してはこれに類似する便利なイベントなどが見つからなくて、悩んでいます。 ScrollChangedイベントが発生した時に各列の位置を計算して、 表示されている範囲内に収まっているかを確認するという方法を考えたんだけど、 「表示されている範囲」を取得する方法がわからず、実現できるかどうか・・・ 詳しい方、知恵を貸していただけませんでしょうか。
412 名前:デフォルトの名無しさん mailto:sage [2014/05/21(水) 19:35:47.40 ID:vOQNrfJU] VisualTreeHelperとかじゃねえの もっと直接的な方法があるかもしれんが
413 名前:デフォルトの名無しさん mailto:sage [2014/05/21(水) 20:51:40.21 ID:eQl8Z8s/] >>411 普通にバインドしてりゃそれくらいは自動でやってくれてるぞ それでもDataGridの糞性能はどうしようもないから、 諦めてWindowsFormsHostでDataGridViewを使うのが吉
414 名前:デフォルトの名無しさん mailto:sage [2014/05/21(水) 22:08:50.68 ID:bWXCPWXI] >>412 VisualTreeHelperですか・・・ 使ったことないので、調べてみます。 >>413 ありがとうございます。 表示更新以外にも内部的にやりたいことがあって、表示されている列をなんとかして取得したいと考えています。 やっぱりWPFのDataGridは使えないのですね・・・DataGridViewの便利さが身にしみます。 今回すでにDataGridが用意されている中での改造をやろうとしていて、WindowsFormsHostを使うことができないので、 WPFの範囲でなんとかできる方法をもう少し試行錯誤したいと思います。
415 名前:デフォルトの名無しさん [2014/05/26(月) 11:41:59.18 ID:C5RAjArj] C#で Process.Kill("explorer"); ↓ Process.Start("explorer"); を実行するとエクスプローラーが起動しますが 自動でこれを閉じる方法はありませんか? ※エクスプローラを一定周期で再起動させたいです。 PCを付けっぱなしだとexplorerの調子が悪くなってしまう場合がある為です。
416 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 11:50:26.53 ID:QBzBPwJ7] 閉じる?
417 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 11:51:08.04 ID:fNjo4Ias] var exp = Process.Start("explorer"); // 一定時間待つ exp.Kill();
418 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 11:55:08.95 ID:82lch4Bs] ウイルス系に感染してるんじゃない?
419 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 12:27:40.15 ID:dlApJPlM] 普通不安定になるならエクスプローラだけ再起動してもダメだろ PC再起動しろよ
420 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 12:54:20.63 ID:DINwIwST] とゆうかエクスプローラはタスクバーでも使ってるから通知領域がおかしくなるぞ 418の言う通りウイルス疑うべき
421 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 12:57:00.00 ID:ptXAqcmg] OneDrive(SkyDrive) とか GoogleDrive 止めたら安定したことがある
422 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 13:12:12.75 ID:lvFZnHPn] ウィンドウを出してタスクバーに登録するあたりがおかしいんだよなw
423 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 13:24:37.36 ID:yHJImmyi] 丸投げ姿勢で常駐系に手を伸ばすなんてろくな事にならん 身の程知らずというものよ
424 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 13:34:07.02 ID:82lch4Bs] >>421 どっちも使ったことないから知らんが、その系統ならオーバーレイアイコンの問題じゃないかな
425 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 14:00:32.79 ID:yHJImmyi] そう言えば TortoiseSVN のアイコン処理がいろいろ悪さすることがあると最近知ったな
426 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 14:40:35.43 ID:2JzRM12h] TortoiseGit でもアイコンのせいで超重くなるな
427 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 14:43:51.58 ID:2JzRM12h] >>415 >>417 PC を長時間ログインしたままで使う人は explorer を時々再起動した方が良いのは賛成なんだが explorer をいくつも開いてると復元が面倒なんでついつい致命的に死ぬまでそのまま使う あと explorer の再起動はすべての explorer プロセスを列挙して全部殺して 最後の一つがタスクバーになるようにする必要があるのかな
428 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 15:32:52.83 ID:EGdbrytd] explorerってタスクマネージャーでプロセス消したら勝手に立ち上がってくるよな あれはタスクマネージャー側で再起動してる?OS側?
429 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 16:02:51.07 ID:2JzRM12h] 完全に消滅させられるけど?
430 名前:デフォルトの名無しさん mailto:sage [2014/05/26(月) 16:10:27.65 ID:kDM+Ms7r] あいつは完全に消滅した
431 名前:デフォルトの名無しさん mailto:sage [2014/05/27(火) 00:54:38.03 ID:RQKxbKNp] >>425 あれのせいで作業遅れたことあるわ インシデント登録のために再現しようとしたら再現しなくてなんだかんだ悩んで時間無駄にした
432 名前:デフォルトの名無しさん mailto:sage [2014/05/27(火) 09:50:05.50 ID:ukhP0HT2] 完全に消滅させるとタスクバーもいなくなるので コマンド起動ですぐたちあげちゃうよな
433 名前:デフォルトの名無しさん mailto:sage [2014/05/27(火) 10:54:06.71 ID:Oftvh7Y1] デスクトップにフォーカスがある状態でAlt+F4 ↓ ダイアログが出たら Ctrl + Shift + Alt + Esc 同時押し ↓ (゚д゚)ウマー
434 名前:デフォルトの名無しさん mailto:sage [2014/05/28(水) 03:17:16.11 ID:7s/YdHrO] >>428 unix でいうところのシェルと同等だからね
435 名前:デフォルトの名無しさん mailto:sage [2014/05/28(水) 04:37:57.28 ID:hRiIfaso] シェルって勝手に再起動したっけ?
436 名前:デフォルトの名無しさん mailto:sage [2014/05/28(水) 06:32:42.47 ID:r/cEnKci] ウィルスの仕業じゃ
437 名前:デフォルトの名無しさん mailto:sage [2014/05/28(水) 08:21:07.64 ID:pSqJyVpX] Windows XP SP2以降、再起動してくれることが多くなった
438 名前:デフォルトの名無しさん mailto:sage [2014/05/28(水) 10:34:03.90 ID:o+iely1Y] 落ちたら再起動するってオプションと 外から殺されたらそのまま死んでる って違いでしょ
439 名前:デフォルトの名無しさん mailto:sage [2014/05/28(水) 10:41:47.46 ID:EmUl6u0+] そんな設定あったのか。OSでの挙動の違いかと思ってた
440 名前:デフォルトの名無しさん mailto:sage [2014/05/28(水) 12:13:44.09 ID:mw4ldslt] フォルダとデスクトップを別プロセスにする設定にしてて タスクバーのプロセスが死んだときに フォルダのプロセスが残ってると タスクバーのプロセスは自動復活しない
441 名前:デフォルトの名無しさん mailto:sage [2014/05/31(土) 08:17:04.13 ID:IL91pjst] C# は、改行のエスケープシーケンス効くのか? string text = "Hello \ world" ;
442 名前:デフォルトの名無しさん mailto:sage [2014/05/31(土) 08:29:51.35 ID:gddrhR3Z] >>441 ソース通り文字列に改行が入っていいなら@を使う。 文字列に改行を入れたくないなら複数行に分けて書くのは無理。必要なら+で繋ぐ。 その場合もちろん最適化は効くからパフォーマンスへの影響はない。
443 名前:デフォルトの名無しさん mailto:sage [2014/05/31(土) 15:54:04.89 ID:QHlXh24u] そんなのちょっとやってみりゃ分かるだろうに
444 名前:デフォルトの名無しさん mailto:sage [2014/05/31(土) 16:29:13.74 ID:PaG8/Dzb] 馬鹿はプログラミングに向かない典型だな