[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 02/20 17:30 / Filesize : 202 KB / Number-of Response : 866
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C♯, C#相談室 Part34



1 名前:デフォルトの名無しさん mailto:sage [2006/11/02(木) 20:45:59 ]
(#゚ー゚)つ < C#、.NETの話題はこちらでどうぞ。

前スレ
C♯, C#相談室 Part34
pc8.2ch.net/test/read.cgi/tech/1157549657/

過去スレは>>2-5あたり。
※スレタイに「#」を入れても消えちゃうので新スレ立てる人は要注意だ。

281 名前:デフォルトの名無しさん mailto:sage [2007/10/12(金) 20:39:52 ]
>>280 低脳は黙ってろ

282 名前:デフォルトの名無しさん mailto:sage [2007/10/12(金) 20:40:09 ]
はぁい

283 名前:デフォルトの名無しさん mailto:sage [2007/10/12(金) 20:52:33 ]
関連クラスへのハイパーリンクを
たどってグラフ化してくれるプログラムでも作ればいいんじゃね

284 名前:デフォルトの名無しさん mailto:sage [2007/10/12(金) 20:54:24 ]
だからどのクラスとどのクラスがリンクするかは用途の関数だろってw
本当にプログラマが言ってるのかね

285 名前:デフォルトの名無しさん mailto:sage [2007/10/12(金) 20:56:02 ]
>>280
量が多いからいいとは限らない。
むしろほしい情報が直感的にわかりやすく手に入る方が、重要なんじゃないか?
どれだけ情報があろうが、その格納場所がわからなければないのと同じだし、
それにMSDNの情報は、多くが重複してたり余計なスペースや下手な配置がされてたりする。
>>276がエスパーを要求してるとは思わないが、
仮に>>280のいう"ほしい機能に必要なクラスを教えてくれるリファレンス"がほしいっていうのも、
あながち大それた要求ではないと思う。

286 名前:デフォルトの名無しさん mailto:sage [2007/10/12(金) 20:56:45 ]
>>284
日本語でおk。

287 名前:デフォルトの名無しさん mailto:sage [2007/10/12(金) 21:00:29 ]
>>285
アッタマ悪いな本当w

だから何が「欲しい情報」かは人によって違うんだよ。
だから、そうでないならクラスライブラリがあんなに肥大する理由がないだろう。

288 名前:デフォルトの名無しさん mailto:sage [2007/10/12(金) 21:47:21 ]
ま た お ま え か

289 名前:デフォルトの名無しさん mailto:sage [2007/10/12(金) 23:48:41 ]
実際個人個人の願望を集約したものは単なるごった煮だと思うけどね。
MS Officeとか。
要望に上がる新機能の大半が既に実装済みという。

>>273
とりあえずこの辺一通りみてみたら?
homepage3.nifty.com/midori_no_bike/CS/

あと、VBのコードスニペットは
.NETで何ができるかを調べるときには意外と参考になるよ。
ttp://salv.miscnotes.com/2007/01/2007.php
ttp://salv.miscnotes.com/2007/01/SnippetIndexVB.zip



290 名前:デフォルトの名無しさん mailto:sage [2007/10/13(土) 00:01:15 ]
>>289
たしかにあれだけごちゃごちゃしてれば、納得のいく話だな。
もはや今日のソフトウェアデベロッパーは、要求される機能を追加していくだけでは駄目だって好例かもね。

291 名前:デフォルトの名無しさん mailto:sage [2007/10/13(土) 02:11:18 ]
>アッタマ悪いな本当w
これいうやつって大概伝達能力不足だよな・・・

292 名前:デフォルトの名無しさん mailto:sage [2007/10/13(土) 02:32:12 ]
>アッタマ悪いな本当w
こういうのをいうやつで頭がよさげにしゃべるやつを見たことがない。
自分のつたない言語能力で、そもそも伝達しようとしている事柄が間違ってることさえあ利、相手が理解しないからといって相手が一方的に頭が悪いと考えてるんだろうな

293 名前:デフォルトの名無しさん mailto:sage [2007/10/13(土) 05:25:25 ]
マ板でやれ

294 名前:デフォルトの名無しさん mailto:sage [2007/10/13(土) 12:48:13 ]
DataGridViewで、外形をResizeしたとき、中のカラムの幅も
それに自動で連動してゴムみたいに伸び縮みするようにできれば
と思うのですが、プロパティ設定でできるでしょうか?

295 名前:デフォルトの名無しさん [2007/10/16(火) 08:39:05 ]
発行しようとすると以下のようになるのですが、どうしたら良いのでしょうか?
特に変わった事はしていないはずなのですが・・・

署名中にエラーが発生しました: bin\Release\app.publish\\setup.exe の署名に失敗しました。


296 名前:デフォルトの名無しさん [2007/10/18(木) 16:25:18 ]
発行しようとすると以下のようになるのですが、どうしたら良いのでしょうか?
特に変わった事はしていないはずなのですが・・・

署名中にエラーが発生しました: bin\Release\app.publish\\setup.exe の署名に失敗しました。

297 名前:デフォルトの名無しさん mailto:sage [2007/10/23(火) 20:08:36 ]
C#で例外を発生させたいんですが、どれを使えばわからずに全部Exceptionにしてます。
ですので、もっと内容に沿った例外を投げれるよう、主に使用する例外クラスを教えてください。

298 名前:デフォルトの名無しさん mailto:sage [2007/10/23(火) 20:25:50 ]
内容に沿ったものを自分で作れ

299 名前:デフォルトの名無しさん mailto:sage [2007/10/23(火) 20:35:57 ]
どんな状況を想定してんの?



300 名前:297 mailto:sage [2007/10/23(火) 20:48:45 ]
半端にJavaを勉強してからC#をメインでしてるのですが、
Javaでは"InvalidArgumentException(引数が不正)"など、目的によってある程度例外が定義されてました。
こんな感じで、よく使う例外が元から定義されてると思って、よく使うものを挙げてもらいたかったのですが、
そういった例外は定義されてないんでしょうか?

301 名前:デフォルトの名無しさん mailto:sage [2007/10/23(火) 20:54:14 ]
MSDNライブラリで芋づる式に調べられるでしょ
msdn2.microsoft.com/ja-jp/library/zbea8bay(VS.80).aspx
とか
msdn2.microsoft.com/ja-jp/library/z4c5tckx(VS.80).aspx
とか

302 名前:デフォルトの名無しさん mailto:sage [2007/10/23(火) 21:03:45 ]
>>301
ありがとうございます。地道に調べていきます。

303 名前:デフォルトの名無しさん mailto:sage [2007/10/23(火) 23:26:11 ]
どうみても定義されてるけど何で気づかんの?

304 名前:デフォルトの名無しさん mailto:sage [2007/10/24(水) 01:38:21 ]
ゆとり

305 名前:デフォルトの名無しさん mailto:sage [2007/10/24(水) 02:41:12 ]
クラスのコンストラクタ内で、そのクラスの初期化(表示処理など)がすべて終わった後に
ある処理を実行させるということは可能ですか?

たとえば、自作フォームのコンストラクタ内でdataGridViewをはりつけて、
dataGridViewの表示がおわった後に、なにか処理を実行したい場合って
どうすればいいんですかね?

コンストラクタ
{
dataGridView初期化;
なにか処理
}
だと、「なにか処理」を実行したあとにdataGridViewの表示処理を行ってるようなんですが。

306 名前:デフォルトの名無しさん mailto:sage [2007/10/24(水) 03:00:30 ]
表示された後はShownイベントでやるしかないんかな・・・?

307 名前:デフォルトの名無しさん mailto:sage [2007/10/24(水) 12:35:26 ]
配列の中身を普遍にしたいのですが、C#では可能でしょうか?
C++に例えると、これと同様なコードを書きたいんです。

const int const array[5] = {1, 2, 3, 4, 5};

308 名前:デフォルトの名無しさん mailto:sage [2007/10/24(水) 12:40:27 ]
>>307
readonly

309 名前:デフォルトの名無しさん mailto:sage [2007/10/24(水) 12:42:15 ]
それは違うでしょw



310 名前:デフォルトの名無しさん mailto:sage [2007/10/24(水) 16:09:26 ]
普遍性を保証したいだけなら ReadOnlyCollection みたいなのを作る手はあるけど。
効率面を気にしてのことなら、コンパイラの最適化を期待するしか。

311 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 15:31:59 ]
int pi=3; ///<summary>円周率</summary>

こういう風にXMLコメントを定義の右側に書く事ってできなかったですか?
(上の通り書くと当然、次に定義される物のコメントとして扱われますが)
できたような気がするのはdoxygenか何かと混同してるのかな

312 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 16:25:14 ]
C# の /// だとそれは無理。

313 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 17:04:51 ]
了解
3.0でできるようにならんかな

314 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 17:06:42 ]
doxygen使えばよくね?

315 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 17:19:28 ]
int a; /// <summary>aaa</summary>
int b;



int a;

/// <summary>bbb</summary>
int b;

で意味が変わるなんて糞仕様以外のなんでもないだろ。

316 名前:デフォルトの名無しさん [2007/10/29(月) 17:24:41 ]
当然の仕様だ

317 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 17:54:37 ]
int a = 0;

a=0 as int
が混在してるようなもんだろ、それ。

318 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 18:25:02 ]
ちげーよ

319 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 19:41:06 ]
ふと頭を過ぎったこと。
>>315みたいな奴がきっとエスパー召還質問するんだろうな。

こういう人って自分の書いたことが一意に相手(コンパイラ含む)に伝わるかどうかっていう
思考回路が欠けてるんじゃないの?



320 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 19:43:30 ]
>>315…なのか…?

321 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 20:13:28 ]
>>319
      r;ァ'N;:::::::::::::,ィ/      >::::::::::ヽ
.      〃  ヽル1'´        ∠:::::::::::::::::i
       i′  ___, - ,. = -一   ̄l:::::::::::::::l
.      ! , -==、´r'          l::::::/,ニ.ヽ
      l        _,, -‐''二ゝ  l::::l f゙ヽ |、 ここはお前の日記帳じゃねえんだ
        レー-- 、ヽヾニ-ァ,ニ;=、_   !:::l ) } ト
       ヾ¨'7"ry、`   ー゙='ニ,,,`    }::ヽ(ノ  チラシの裏にでも書いてろ
:ーゝヽ、     !´ " ̄ 'l,;;;;,,,.、       ,i:::::::ミ
::::::::::::::::ヽ.-‐ ト、 r'_{   __)`ニゝ、  ,,iリ::::::::ミ
::::::::::::::::::::Vi/l:::V'´;ッ`ニ´ー-ッ-,、:::::`"::::::::::::::;゙ ,  な!
:::::::::::::::::::::::::N. ゙、::::ヾ,.`二ニ´∠,,.i::::::::::::::::::::///
:::::::::::::::::::::::::::::l ヽ;:::::::::::::::::::::::::::::::::::::::::::/ /
::::::::::::::::::::::::::::::! :|.\;::::::::::::::::::::::::::::::/ /

322 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 20:18:53 ]
コピペ君って馬鹿だな、まで読んだ。

323 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 22:06:30 ]
>>315
それがダメなら同じ///じゃなくて別の表記にすればいいだけだわな
doxygenでも///<みたいに書いていたはず

324 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 01:34:20 ]
つかコードの後ろにコメントってセンス無さ杉

325 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 11:24:47 ]
大量のツッコミを受けた>>315が反論できなくなったために
センスという否定も肯定もできない理由を使って問題の大前提を否定し始めたように見える

326 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 11:47:11 ]
>>325
煽りたいだけなら他所でやれよ
>>315の言いたい事すら理解できてないだろお前・・・

327 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 12:16:29 ]
>>322
コピペ君って馬鹿だな、まで読んだ。

328 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 15:55:11 ]
ワロス

329 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 20:07:27 ]
>>315の指摘は至極まっとうだと思うんだけど
>>319は何が言いたいのかわからん



330 名前:デフォルトの名無しさん [2007/10/30(火) 20:17:21 ]
>>319の指摘は至極まっとうだと思うんだけど
>>315は何が言いたいのかわからん

331 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 20:38:10 ]
ひろ君もたか君も
つまらないケンカはやめなよ!

332 名前:デフォルトの名無しさん [2007/10/30(火) 20:38:45 ]
けい君ですが

333 名前:デフォルトの名無しさん [2007/10/30(火) 22:17:02 ]
ちょっとお伺いしたいことが
www.katch.ne.jp/~h-inoue/tips/cs/0002.html
ここに書いてるclassを呼び出す記述がわかりません。。
ちなみにFormにはテキストボックス(TextBox1)とボタン(button1)があり
テキストボックスにURLを打ち込んで、ボタンを押すと、実行されるように
したいのですが・・・
どなたかわかる方がおられましたらよろしくお願いします

334 名前:デフォルトの名無しさん [2007/10/30(火) 22:20:14 ]
classは呼び出せませんよ

335 名前:デフォルトの名無しさん [2007/10/30(火) 22:22:55 ]
>>334 では記述例を・・

336 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 22:23:42 ]
まずなんか本買うなりして基礎からやった方がいいよ
というかやれ

337 名前:デフォルトの名無しさん [2007/10/30(火) 22:27:47 ]
prismbox.sample.httpclient.Class2 i = new prismbox.sample.httpclient.Class2();
i.Class2(textBox1.Text, @"c:\test.gif");
ではi.Class2のところでエラーがorz

338 名前:デフォルトの名無しさん [2007/10/30(火) 22:34:46 ]
>>337
メソッドなら呼び出せる
Class2はメソッドじゃない

339 名前:デフォルトの名無しさん [2007/10/30(火) 22:43:29 ]
すいません>>338 上記のリンクの場合のメソッドって何になるんでしょうか?



340 名前:デフォルトの名無しさん [2007/10/30(火) 22:45:13 ]
>>339
Mainがメソッド
でもこれはプログラム起動時にフレームワークから呼び出される為のもの

341 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 22:47:19 ]
>>339
C#やっててコンストラクタも知らんのか。
それ自体は”コンストラクタ”でググればでるけど、そんな基礎的なこともわからずに無謀なコーディングをするより、
入門系のサイトやページを一度じっくり見た方がいい。
でないと、またすぐにつまずく。

342 名前:デフォルトの名無しさん [2007/10/30(火) 22:51:01 ]
>>341 徹底的に基礎を固めてきますm(_ _)m

343 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 23:05:12 ]
>>342
初めての言語はできるだけ入門本を一冊買った方がいいが、
初心者用のサイトならここがおすすめ

@IT:連載 改訂版 C#入門
www.atmarkit.co.jp/fdotnet/csharp_abc2/index/index.html

本で索引を引くより早いから、俺も忘れたときに見にいってる。

344 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 23:24:37 ]
argsをstringの配列にしながら、args.Length != 1ってのがよく分からない。
普通のstring変数にしてIsNullOreEmptyでチェックした方がいいんじゃないの?

345 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 23:32:05 ]
>>344
日本語でおk

346 名前:デフォルトの名無しさん [2007/10/30(火) 23:42:27 ]
>>344
よくないよ

347 名前:デフォルトの名無しさん mailto:sage [2007/10/31(水) 13:23:21 ]
TabControlで、Tab耳の並びを縦型Vertivcalにしたとき、耳の数
が多いと自動的に段々重ねになる仕様のようなのですが、これ
を横型Horizontalの場合と同じように1列に並べる手段があると
ありがたいのですが、できるとしたらどのような方法になるでしょうか?

348 名前:デフォルトの名無しさん mailto:sage [2007/10/31(水) 18:23:29 ]
>自動的に段々重ねになる仕様
え?
んな仕様になってないでしょ。
デフォではタブが横幅に収まらない場合スピン(?)が右隅に付く

349 名前:デフォルトの名無しさん mailto:sage [2007/10/31(水) 19:44:51 ]
>>348

Tab耳を横並べHorizontalにした場合はその通りなんですが、
縦並べVerticalにした場合はデフォルトで段々重ねになる仕様のようでした。
Helpにもそうありました。これだと、たくさん耳があるとそれだけで場所を
取ってしまうため、一列にしたいのでした。

やっぱり仕様だから無理なのかなー・・・



350 名前:デフォルトの名無しさん mailto:sage [2007/10/31(水) 19:48:04 ]
追記)
ちなみに、「段々重ね」というのは、MultilineプロパティをTrueにしたとき
の並び状態のことでした。

351 名前:デフォルトの名無しさん mailto:sage [2007/10/31(水) 20:57:34 ]
確かにAlignmentをLeftにするとMiutilineが勝手にTrueになるね

352 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 23:21:53 ]
メソッドの引数としてデリゲートを使いたいのですが、
いちいちデリゲートの型を外部に宣言せずに書く方法はありませんか?
public void Func(delegate void del() sendMethod) {〜}
のようにかければ非常に楽なのですが。

353 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 23:24:23 ]
これだからC厨は

354 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 00:01:07 ]
いや、Cでも関数へのポインタ型は
きちんとした意味を持った名前にtypedefして使うものだろ。

355 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 01:05:46 ]
>>352
System.Action

356 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 01:07:59 ]
デリゲートや関数ポインタがスタティックだとわかってるんだろうね?

357 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 01:29:00 ]
>>355
そのデリゲートが使えるということですか?この場合引数はないので使えないと思うのですが。
また、デリゲートの定義全般の話ですので、一つのデリゲートの型が一致しても抜本的な解決にはならないかと。

>>356
型の定義が静的だ、という意味でしたらわかっています。
その定義をどうにかして見やすく配置できないかと考えてる次第です。

358 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 01:41:26 ]
void Func(Action sendMethod) { }

void SendMethod() { }
Action sendMethod = new Action(SendMethod);
Func(sendMethod);


Action<T>

359 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 01:50:40 ]
>>358
すいません、がんばって理解しようとするのですが眠くてどうにもならないようです。
また明日の朝見直して理解しようと思います。



360 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 06:06:10 ]
擬似コード過ぎて理解の必要がないというかw

361 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 10:27:19 ]
メソッド内で、一度代入したら不変であることを保証しようと思って、
void func()
{

362 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 10:29:12 ]
すいません、失敗して書き込んでしまいました。

メソッド内で、一度代入したら不変であることを保証しようと思って、
void func()
{
 readonly int i = OtherFunc();
 〜
}
としようとしたのですが、readonly が使えるのはクラスのフィールドのみらしく、できませんでした。
これと同等の文法はありますか?

363 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 10:59:26 ]
フィールドにすれば?

364 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 11:35:46 ]
>>363あほなことゆうな。
出来てもいいと思うんだけど出来ないね。
言語仕様を出来るだけシンプルにしたかったんかな?

365 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 12:07:10 ]
メソッド内でreadonlyを使わなければわからなくなるほど
変数宣言が多くて長いメソッドを書くなということでは

366 名前:デフォルトの名無しさん [2007/11/15(木) 00:24:37 ]
C#をやってるたら、仕事に支障をきたし始めたので辞めます

皆さんも仕事でC++を使う人は辞めたほうが無難です。

367 名前:デフォルトの名無しさん [2007/11/15(木) 00:33:52 ]
                             |
                             |
      ∩___∩             |
      | ノ  _,  ,_ ヽ        ((  | プラプラ
     /  ●   ● |         (=)
     |    ( _●_)  ミ _ (⌒)   J  ))
    彡、   |∪|  ノ
⊂⌒ヽ /    ヽノ  ヽ /⌒つ
  \ ヽ  /         ヽ /
   \_,,ノ      |、_ノ

368 名前:デフォルトの名無しさん mailto:sage [2007/11/15(木) 00:37:32 ]
今時一本で食ってこうとしてる奴なんているんだ・・・可哀想に

369 名前:デフォルトの名無しさん mailto:sage [2007/11/15(木) 01:07:38 ]
>>366
きっとC++をただ使ってるだけだろうな




370 名前:デフォルトの名無しさん mailto:sage [2007/11/15(木) 03:44:22 ]
英語をやってるたら、仕事に支障をきたし始めたので辞めます

皆さんも仕事で日本語を使う人は辞めたほうが無難です。

371 名前:デフォルトの名無しさん [2007/11/15(木) 04:08:37 ]
自分の能無しぶりを理由にしても説得力はないな

372 名前:デフォルトの名無しさん mailto:sage [2007/11/15(木) 11:25:36 ]
言語は道具、道具を複数使ってるからと言って支障きたすとは思えないのだが?

373 名前:デフォルトの名無しさん [2007/11/15(木) 23:27:54 ]
わからんではない

オブジェクト作りっぱなしなんてC++ではありえない
そんな環境になれてしまうとC++が面倒に感じてしまう。

まぁ、C#は使いやすさと引き換えに速度を完全に捨てたらな・・・

374 名前:デフォルトの名無しさん mailto:sage [2007/11/15(木) 23:41:29 ]
速度は捨ててないぞ
捨てたのはメモリだ

375 名前:デフォルトの名無しさん [2007/11/15(木) 23:50:26 ]
>>374
ソクドモステテマスッテ

376 名前:デフォルトの名無しさん mailto:sage [2007/11/15(木) 23:59:31 ]
メモリを捨てて速度が保たれるなんてありえない。

377 名前:デフォルトの名無しさん mailto:sage [2007/11/15(木) 23:59:31 ]
文法がC#のC++があったら最強なんじゃないかと思う。

378 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 00:00:42 ]
>>376
それに初起動の速度もパフォーマンスだと考えると、メモリを食うならそれだけ起動が送れるからな。

379 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 00:04:58 ]
>>377

ネイティブのC#ならアンマネージドC#で作れるだろう。
ただし、APIは自作になるけどな。



380 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 00:05:35 ]
>>377
Delphi

381 名前:デフォルトの名無しさん mailto:sage [2007/11/16(金) 00:12:14 ]
個々の性能を見るとC#はそう悪くない。
GCに関してはここによると
ttp://densanshokunin.at.webry.info/200702/article_1.html
> C++のstack > C#のFinalizeなし > > C++のheap = C#のDispose > C#のFinalize
ということらしい。スタックさいこーで次点がファイナライザなしのGCだそうだ。

C#が遅く感じるのはメタ情報を抱えたままなのが大きいように思える。
必要以上にコードやリソースの破棄と再ロードやページアウトインを繰り返していてこれが足を引っ張ってる。
JITやngenしててもメタ情報を参照するために結局もとのアセンブリもロードされているのが確認できる。
おかげで別の部分がメモリから追い出されることになりやすい。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<202KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef