- 1 名前:デフォルトの名無しさん [2007/08/26(日) 12:42:25 ]
- (#゚ー゚)つ < C#、.NETの話題はこちらでどうぞ。
前スレ C#, C♯, C#相談室 Part41 pc11.2ch.net/test/read.cgi/tech/1184840053/ 過去スレは>>2-5あたり。
- 157 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 18:11:29 ]
- 一気に書き込まずに、時々ストリームを閉じてappendで追記すればOK。
- 158 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 18:34:19 ]
- スーパーバイザーコールはCPU占有するから、処理を一気に行うのは良くない。
- 159 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 18:53:46 ]
- ご存知の方いたらよろしくおながいします。
【開発環境】 visual studio 2005 、言語はC#です 【やりたいこと】 ・「クラス名」を変数として、newしたい (newする対象となるクラスを可変にしたい、ということです) 【例:正しいコードではないけど、やりたいことのイメージ】 // newしたいクラス名を引数として、newしたクラスインスタンスを返す関数 object getCreatedClass(string iClassName) { return new iClassName(); } ClassExample1 ex = getCreatedClass("ClassExample1 "); // ClassExample1 を作る ClassExample2 ex = getCreatedClass("ClassExample2 "); // ClassExample2 を作る ※ 「ClassExample1 ex = new ClassExample1()」でダメなの?と思われるかもしれませんが、 上の関数はあくまで簡潔にした例で、実際にはgetCreatedClass内で new以外にも、クラス名を使った処理をしたいのです。
- 160 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 18:59:46 ]
- リフレクションでググれ
- 161 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 19:20:56 ]
- またそれか
Activator.CreateInstance そんなことそんなに頻繁に行われることなの? やるとしてもちゃんとわかってる人がやるものじゃないの?
- 162 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 19:59:49 ]
- いまの現場にいるオレよりキャリア長いけどよく分かってない人はリフレクション大好きだぜ
- 163 名前:148 mailto:sage [2007/08/31(金) 20:42:26 ]
- >>152
156さんの例もあるので、CP932絡みの問題ではないようです。 >>156 やはり落ちましたか。 根本的な解決ではないですが、とりあえずファイルを分割して 最後にDOSコマンドで連結する事で逃げることにしました。 >>157 なるほど。その発想はありませんでした。試してみます。
- 164 名前:デフォルトの名無しさん [2007/08/31(金) 20:47:44 ]
- ネイティブのDLLから、バイナリ列を取得したいのですが、
バイト配列のマーシャリングは、どうすればよいのでしょうか? BOOL native_func(LPBYTE pBuff, DWORD dwBuffSize, LPDWORD lpByteReturned); 文字列や構造体のサンプルはいくつか見つけたのですが。。
- 165 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 21:06:31 ]
- 面倒なときはメモリ確保してIntPtrで渡して帰ってきたらMarshal.Copy
- 166 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 21:09:31 ]
- >>164
MSDNライブラリ読んで理解できないのなら(まあ、君は最初から読んでなさそうだけど) やらない方がいいんじゃないの? 人に聞くような難解な話とも俺には思えないから言うんだけど。 でないと危険だと思うけどね。 それとも、分からないことや意図しない動作に遭遇する度にいちいち人に聞くつもり?
- 167 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 21:17:12 ]
- unsafeでもいいならfixedでできたっけ
- 168 名前:164 [2007/08/31(金) 21:24:24 ]
- >166
ありがとう。 System.Array で受けようとしてはまっていました。 Blittable型は、特別なコーディングいらないってことなので、 [DllImport("LargeBuffer.dll")] private extern static bool native_func( byte[] pBuff, uint dwBuffSize,, out uint lpByteReturned ); で、 とりあえず、大きな 領域を new byte[] して取得してから、 Arrayにセットするようにしました。
- 169 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 21:24:33 ]
- bool native_func(byte[] pBuff, int dwBuffSize, [out] int lpByteReturned);
で良いんじゃなかったっけ?
- 170 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 21:25:23 ]
- おっと、失礼。
- 171 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 21:31:56 ]
- >>166
おまえはそんなことを言うためにこのスレにきてんの?
- 172 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 21:37:49 ]
- 当然だろ。
- 173 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 21:40:11 ]
- マーシャリングは適当にググると各々やり方が微妙に違ってたりするんだよな
俺はよく迷う まぁMSDNみろよって話に収束するんだけどさ
- 174 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 21:46:31 ]
- 正解が一つじゃないからな
- 175 名前:デフォルトの名無しさん mailto:sage [2007/08/31(金) 23:46:03 ]
- COMインターフェイスの定義もね。。
引数がCOMインターフェイスへのポインタの場合、 objectで汎用的にしてるとか IntPtrにしてほっとかれてるときとか 特定のインターフェイスに決め打ちしてるときとか。。
- 176 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 00:48:21 ]
- ネット上の共有フォルダにおいてあるmdbファイルにJetでアクセスするツールをC#で作って、何ヶ月も放置
していたのだけど、久しぶりに使ったら、エラーになって使えなくなってました。 読み取りはできるのだけど、書き込みでエラーになります。 mdbファイルをローカルにおいてもだめでした。 他のPCからだと、同じexeとmdbで、正常に動いているので、Windowsの設定や環境のせいだと思うのだけど、 なにか心当たりのある人いませんか?
- 177 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 01:39:12 ]
- >>176
MDBを修復してみる
- 178 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 15:31:49 ]
- C#でアプリ作ってます。
今、NumericUpDownコントロールの値を増減すると、その値でフォントの大きさを増減するプログラムを 作りたいと考えています。 この場合、全コントロールのフォントサイズを一括で増減させるようなプログラムって 可能なのでしょうか? 一つ一つフォントサイズを指定しなおさないといけないのでしょうか?
- 179 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 15:34:49 ]
- 君がc#やドトネトのライブラリの作者なら、そんな特殊な需要を満たすための
foolproofな方法をわざわざ用意するだろうか?
- 180 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 15:48:23 ]
- コントロールのFontプロパティはアンビエントプロパティだから
いっちゃん親のFontを変えれば 特別にフォントが指定されてないコントロールは同じになるよ
- 181 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 15:53:39 ]
- >>179
よう、fool
- 182 名前:178 mailto:sage [2007/09/01(土) 16:27:40 ]
- >>180
早速ぐぐってみます。 ありがとうございます。
- 183 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 19:22:51 ]
- >179
foolproofってなんて意味?
- 184 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 19:41:35 ]
-
どなたか Gilma (=ILMerge のGUIツール) および ILMerge を使ってる方が 居たら教えてください。 pc11.2ch.net/test/read.cgi/tech/1184037822/853-854 で質問していたのですが、お答え得られず。こちらでどなたかわかる方いたら お願いしたく。よろしく。
- 185 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 21:20:28 ]
- >>183
Google使えないのか?
- 186 名前:デフォルトの名無しさん mailto:sage [2007/09/01(土) 22:56:47 ]
- >185
使える >179に答えて欲しいだけ
- 187 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 00:16:53 ]
- C#などのIRCって今稼動してるのないのかな?
海外みたく、活発な交流をして色々な知識を吸収したいと思っているんだが
- 188 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 00:54:59 ]
- >>187
すいません、海外ってどんなところで活発に交流しているのですか? よかったらおしえてください
- 189 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 00:56:03 ]
- 特定のフォルダから、特定のフォルダにコピーしたいんだけど、
なんか手っ取り早くGUIで残り何秒とか表示する方法ないかな。 エクスプローラのコピーコマンドとかあるかなっておもったが、 explorer.extって特定のフォルダを表示するしか出来ないのね・・・
- 190 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 00:56:23 ]
- >>180
ところで、アンビエントプロパティで親から引き継がれてるか、 個別に設定されてるかを確認する方法ってないんかな?
- 191 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 00:59:53 ]
- >>189
Microsoft.VisualBasic.FileIO.FileSystem でも使ってればいいんじゃない
- 192 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 01:01:32 ]
- >>176
エラーの内容くらい書けバカ
- 193 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 01:03:58 ]
- >>189
SHFileOperation使う。 でもVBのライブラリ参照したらその機能あった気がするのでそっちのがいいかな?
- 194 名前:デフォルトの名無しさん [2007/09/02(日) 01:04:31 ]
- >>192
そこまで書いてるんだから エラーの内容くらい想像しろバカ
- 195 名前:187 mailto:sage [2007/09/02(日) 01:05:49 ]
- >>188
ttp://d.hatena.ne.jp/goinger/20070814/1187111616 こちらのブログを見ていただければわかるかと。
- 196 名前:189 mailto:sage [2007/09/02(日) 01:06:45 ]
- >>191 マジありがとう
調べてみるよ
- 197 名前:デフォルトの名無しさん [2007/09/02(日) 01:10:38 ]
- .NETで書かれた商用アプリってありますか?
どうも、.NETでかかれたものを金出してまで使おうとは思えん
- 198 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 01:18:38 ]
- あるよ
- 199 名前:189 mailto:sage [2007/09/02(日) 01:31:54 ]
- ありがとう。 やりたいことは
Microsoft.VisualBasic.FileIO.FileSystem.CopyDirectory( @"C:\test\", @"e:\", UIOption.AllDialogs でいけそうだ。 でも、このメソッド、ダイアログを表示して、かつ自動的に上書きという 引数はないんですね・・・ 上書きだけか、ダイアログを表示するだけか、しかない 出来れは自動的に上書きして、進行状況がわかればうれしいんですが…
- 200 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 01:39:16 ]
- >>197
コピペ?
- 201 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 01:47:38 ]
- >197
そう思う理由を教えてくれ
- 202 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 02:20:21 ]
- 1.1のFormsで書かれた商品なら動かしたことがあるが、
リストに毎回描画するから糞重たくてむかついたことはある。 結局、最終的にアプリの出来はスキルで待ったく別物が出来上がるんだと つくづく感じた。
- 203 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 02:22:49 ]
- PCがしょぼいんだろ
- 204 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 08:31:16 ]
- ユーザー固有のスタートメニューのフォルダは
Environment.GetFolderPath(Environment.SpecialFolder.StartMenu)) で取得できますが、 全ユーザー共通のスタートメニューのフォルダを 取得するメソッドは用意されていないのでしょうか? ユーザー固有のスタートメニューのパスに含まれるユーザー名を All Usersに置き換えればいいような気もしますが、 あらゆる環境で動くかどうか心配なので、 できれば、あらかじめ用意されている方法を使いたいと思っています。
- 205 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 11:07:38 ]
- SpecialFolder列挙体には含まれてないやつがあるし
実行時にenumの範囲チェックしやがるので SHGetFolderPathを直に使うしかないと思う
- 206 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 16:25:56 ]
- インストーラ自作?
- 207 名前:デフォルトの名無しさん [2007/09/02(日) 17:40:56 ]
- .NETで書かれたSDJEditorを使ってみたが、.NETの先が見えた気がした
EmEditorに比べるとほんと鼻くそ やっぱ.NETで有名なネイティブアプリに勝つなんて無理でしょうか?
- 208 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 17:42:10 ]
- 工作員必死だな
- 209 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 18:44:52 ]
- 比較対象がEmEditorなんだ。
秀丸と比べるとほんと鼻くそだよね>Em
- 210 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 18:50:27 ]
- 逆だな
- 211 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 20:07:14 ]
- サクラが一番
- 212 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 20:17:19 ]
- エディタなんてVisual Studioでいいじゃん
- 213 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 20:32:23 ]
- コーディングはVSでやってるけど
.txtなんかはEmEditorに関連付けてる
- 214 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 20:57:01 ]
- WebBrowserコントロールでMouseUpイベントを取ることは出来ないんですかね。
MouseDownは取れます。以下はVBですが。 homepage1.nifty.com/yasunari/VB/VB2005/WebBrowserMouseDownEvent.htm Spy++で見てもLBUTTONUPとか表示されないので、そもそもムリなんですかねぇ。
- 215 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 21:42:12 ]
- >>207
アプリ&開発者が違うのに、開発ツールを比較するか?w
- 216 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 23:39:06 ]
- >>197
.net framework + 在庫管理や工程管理でぐぐったら出てくるよ。
- 217 名前:デフォルトの名無しさん mailto:sage [2007/09/02(日) 23:46:12 ]
- >>197
これとか。 ttp://www.microsoft.com/japan/products/expression/expression-blend/default.mspx
- 218 名前:デフォルトの名無しさん [2007/09/03(月) 00:03:57 ]
- でも、おそいねw
正規表現をつかったらperlに負けた スクリプトに負けますか・・・
- 219 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:05:51 ]
- Cの基本的な文法については勉強して次は実際にSourceForgeでオープンソースの
プログラムを読もうと思っていたのですが難しすぎて分かりません みなさんはある程度文法の勉強をしてからどのようにして勉強していきましたか?
- 220 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:06:26 ]
- ここはC#スレです
- 221 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:15:02 ]
- >>218
正規表現エンジンの質やI/Oが主要なボトルネックになる類のプログラムでは 言語の差など微々たるもんだ 書き方にも拠るが、C++で書こうが普通にスクリプトのが速かったりする
- 222 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:33:11 ]
- >>218
毎回正規表現をコンパイルするコードなんて書いてないだろうな?
- 223 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:37:25 ]
- >>218
正規表現の処理がスクリプトで書かれてんじゃないだろw
- 224 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:39:59 ]
- .NETの正規表現エンジンは遅くて困るというほどでは無いにしろ、
そんなに速くないだろ スクリプトの場合は、それがCで書かれているだろうしな
- 225 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:45:34 ]
- Regex のコンストラクタでオプションに RegexOptions.Compiled つけてる?
- 226 名前:デフォルトの名無しさん [2007/09/03(月) 00:46:51 ]
- >>219
文法しかわからない奴が、SourceForge等で公開されているソースを読めるわけないだろ
- 227 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 00:48:28 ]
- 俺も実験したことがあるが、正規表現をコンパイルしとくのは当然の話として、
C#で正規表現の性能を競ったらPerlやらPythonやらに普通に勝てんよ そういう競争なら、相手はスクリプトではなくて、実質的にはCでカリカリに チューンされたモジュールになる 勝てるわけが無いだろ
- 228 名前:デフォルトの名無しさん [2007/09/03(月) 00:57:08 ]
- >>227
だったら、C#の存在意義ってなに?
- 229 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:01:45 ]
- >>228
さあ 無いと思えば無いんじゃね 性能はネイティブにゃ勝てんし スクリプトみたいに手軽じゃないし Javaみたいにwrite once, run anyware標榜してるわけでもねぇし
- 230 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:06:02 ]
- 正規表現ならTcl最強説
- 231 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:16:10 ]
- >>228
一応言っとくが、自分で計算処理する分にはC#のがスクリプトよりは 格段に速いぞ ネイティブのがさらに速いがw 自分の計算が主要なボトルネックになるタイプのプログラムかどうかが 一つのポイントだな そうでないようなケースは案外多い
- 232 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:24:44 ]
- エミュレートされた仮想CPU上で動いてる訳でもなし、C#ではそもそも
記述できない低水準の処理以外の部分でネイティブコードと速度に差なんて出ようがないと思うが。
- 233 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:25:22 ]
- 普通速度なんか気にする必要ないだろ
体感できるほど遅くなるアプリなら最初からネイティブしか選択肢ないし そんなんめったに書くことない
- 234 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:25:22 ]
- そもそもさぁ
早いとか、遅いとかって言ってる奴は、証拠のソースを出せよ だってさ PerlもPythonも、コンパイル時に正規表現のコンパイルと最適化をしている C#やJavaは実行時 どうやってコンパイルと最適化に消費する処理時間を考慮するの?
- 235 名前:デフォルトの名無しさん [2007/09/03(月) 01:27:24 ]
- >>233
速いことより、遅い方がいいことってあるのかしらん?
- 236 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:27:52 ]
- 実行時にネイティブにコンパイルされるといったって
C#は安全性を気にして余計な処理をしてるだろ Cとかと比べたらどうしたって遅くなる
- 237 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:28:44 ]
- >>235
速度の違いが体感出来ないならC#使ってもデメリットはない プログラミングが楽になるからC#使った方がいいというわけだな
- 238 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:29:28 ]
- >>232
そりゃJITだけどCにゃ負けるようだよ shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=all これはMonoだが、Java Server VMの性能が参考になるだろう
- 239 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:32:20 ]
- そもそも.NETで不満になるようなアプリってどれぐらいあるんだ?
大体.NETは実行スピードと生産性のバランスの中のひとつの解に過ぎないだろ
- 240 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:34:25 ]
- .NETは計算速度はそんなに遅くねぇけど
起動がのろいのとGUIもっさりはどうしようもねぇな
- 241 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:36:40 ]
- ソース出ないね
やっぱり法螺吹きか
- 242 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:37:14 ]
- >>234
CLIランタイムをロードする時間に比べりゃ、正規表現のコンパイルにかかる時間など 微々たるもんだろw
- 243 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:38:13 ]
- Win32のBitbltとか呼んでももっさりするかね?GDI+よりは早い。
- 244 名前:243 mailto:sage [2007/09/03(月) 01:38:59 ]
- すまん。最後は疑問系です・・・(ノД`)
- 245 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:41:19 ]
- >>243
DDBのblitはGDI+の10倍は速いらしいな その時点でWinFormsだめぽ
- 246 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:45:05 ]
- >>241
そんなに気になるんなら自分でためせばいいのに 以前俺が実験したソースをあげるよ ttp://www.borujoa.org/upload/source/upload14325.zip 青空文庫のテキストを適当に置換するプログラム inputというフォルダにサンプルの入力ファイルがあるが、300K程度の サイズだから、気になるならデカくしてみるんだね
- 247 名前:デフォルトの名無しさん [2007/09/03(月) 01:53:14 ]
- >>239
それはあくまで作る側の屁理屈 使う側からすれば、生産性なんてどうでもいい あなたが、よく使うアプリケーションが次バージョンから.NETで書かれたらどう思う? LightWaveが.NETなんかで書かれたら俺は間違いなくMAXへ移行する
- 248 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 01:57:26 ]
- >>247
えーとね、生産性悪くなるとコストがかかるんだよ。 それは製品価格に反映されたり、次バージョンで実装される機能が少なくなったりすることになるんだよ。
- 249 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 02:05:21 ]
- >>247
なんでアセンブラでつくらねーんだっていってみろ。
- 250 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 02:06:39 ]
- まあ、問題は、場合によっては普通にLL言語にさえ後れを取る
C#がバランス上最適解かどうかだろうなw
- 251 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 02:06:52 ]
- 製品の値段に直結するぞ。
機能も少なくなるぞ。 品質が下がることもあるぞ。
- 252 名前:デフォルトの名無しさん [2007/09/03(月) 02:07:02 ]
- けど、C#が使えないのは事実
C#しかつかないやつはVC++で開発してる部署に行ったらほぼ終わり
- 253 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 02:07:34 ]
- >場合によっては普通にLL言語にさえ後れを取る
絶対にLL言語に遅れをとらない言語ってなんだよw
- 254 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 02:09:30 ]
- VC++しかつかないやつは他の言語で開発してる部署に行ったらほぼ終わり
- 255 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 02:14:15 ]
- >>246
・300kのIO速度の計算をスルー ・300kのSJISから内部コードの変換(UTF-16やutf8)コストもスルー ・(C#)2000行の無駄なnew StringBuilderとToString、+演算子置き換えで高速化 正規表現のベンチになってないよ
- 256 名前:デフォルトの名無しさん mailto:sage [2007/09/03(月) 02:17:16 ]
- >>255
うん、正確な正規表現のベンチのつもりで書いたのではないよ それが求めるものなら自分でやってくれ IO処理は「どの言語でも」やっている ユニコードへの変換も「どの言語でも」やっている オーバーヘッドの大きそうなフォーマット処理も、PerlやPythonでもやっている 概ね、カリカリに書かずに適当に同じレベルで「普通に」書きなぐったものだ 特に何かをひいきしたつもりは無い そうやって書いたものが、スクリプトが案外速かった(C#より速い)ってのが 重要ね。
- 257 名前:256 mailto:sage [2007/09/03(月) 02:28:23 ]
- ちなみにC++も三種類書いてみたが大して速くなかったね。
ソースを見れば分かるが、LL言語で書くよりずっと複雑でトリッキーで エラーを産みがちなコードになるというのに。 こんな仕事はLL言語向きだ。他の解は馬鹿げている。そう思ったよ。 そして、そういう仕事は案外多いのだと思う。
|

|