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


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

C#, C♯, C#相談室 Part53



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

前スレ
C#, C♯, C#相談室 Part52
pc12.2ch.net/test/read.cgi/tech/1238548552/

Visual C# 2008 Express Edition 日本語版
www.microsoft.com/japan/msdn/vstudio/express/vcsharp/

その他テンプレ>>2-5くらい

496 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 23:19:40 ]
はげどう

497 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 23:25:50 ]
まあFile.Existなんて気休めだよな。

498 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 23:56:25 ]
ところで
Try(() => Open(path)).Catch<FileNotFoundException>(ex => Console.Write(ex));
とか書けたらいいなと思ってるのは俺だけじゃないはず

というか多分書けるな
今から作ってこよう

499 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 00:05:20 ]
醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い
醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い
醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い
醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い
醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い
醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い醜い

500 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 00:10:24 ]
try〜catchじゃない意味あるの?
こんなオナニーコード見せられたら卒倒しちゃうよ。

501 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 00:14:51 ]
吐き気がするw

502 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 01:43:51 ]
>>498
賛同者はごくまれだろうな・・・・・

503 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 02:18:06 ]
if(auto ex = collectException(new File(path))) writeln(ex);

504 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 03:17:30 ]
RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup
みたいのはあるけどな。
もちろん理由があって。




505 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 05:05:40 ]
Util.TryCatch(()=>hogehoge...,e=>hoge....);
というのは作った。

506 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 05:10:59 ]
何の役にもたたなそうだな

507 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 07:06:19 ]
きもい流れになってるな・・・

508 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 12:01:36 ]
C#を見にくいコードにする友の会か?

509 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 12:47:28 ]
使う気にはなれないが、総称型をcatchに使えることは分かった。
public static T Try<TEx,T>(Func<T> func) where TEx : System.Exception {
 try { return func(); } catch (TEx ex) { Console.WriteLine(ex); return default(T); }
}


510 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 13:08:02 ]
これがラムダ厨の威力だというのか。

511 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 13:12:37 ]
もうクラス使わずに全部クロージャだけで書こうぜ

512 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 13:20:44 ]
一部のラムダ基地外をどうにかしてくれ。

513 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 13:27:07 ]
短かく書きたい病ってのは誰でも一度は発症するもんだよ

514 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 15:10:12 ]
ありすぎて困る



515 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 15:19:57 ]
短く書きたい自体は分かるが、
短くなってない、見にくくなってるだけが多いのはなんでだ。


516 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 15:20:14 ]
短く書きすぎて可読性落ちたらいみねぇwww


に気付くのにPGはじめて数年かかった

517 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 15:21:54 ]
try-catch-finallyをラムダで書くのに何のメリットがある。

518 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 15:48:42 ]
テストコードやアサーションとかなら使い道があるかも
思いつかないけど

519 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 18:00:32 ]
>>515
同感、未だ短く書きたい病発症してますけど、つか冗長コード書くやつ死ね派ですが
Tryは間違ってるだろと思うわ

520 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 18:05:09 ]
俺は冗長コードは可読性とパフォーマンスはかりにかけて許容範囲ならOKな派

521 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 18:34:03 ]
C#は文法自体が冗長だから短く書いてもたかがしれてるんだよな。
とりあえずPerlとかRubyは糞。

522 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 18:36:49 ]
冗長にも種類があって、この修正いったい何か所なおしゃいいんだよボケっって冗長タイプは大嫌い

523 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 18:52:04 ]
特定の人間しか読めないようだとそれはそれで冗長といえる気がする

524 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 19:00:18 ]
>>498みたいなのはともかく,さすがにラムダが全く分からないのは問題外



525 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 19:30:49 ]
いつも思うけどこのスレって程度の低い盛り上がり方するよね
ラムダ式なんて書けて当然読めて当然
ラムダ厨も叩いている奴も意識しすぎできもいよ

526 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 19:37:50 ]
と、>>498が言っております

527 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:08:43 ]
2chブラウザみたいに動的に分割するウインドウって作れるでしょうか?

528 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:17:19 ]
2chブラウザっていろいろない?

529 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:18:54 ]
それよりも
TryってVBじゃねえの

530 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:20:22 ]
どう考えてもjavaだろう

531 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:23:11 ]
いや そこはNullでしょ

532 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:27:53 ]
書けて当然読めて当然濫用も当然

533 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:33:24 ]
俺の書くコードが一番!
お前らの書くコードは二番!

534 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:37:40 ]
1人で書いてる限りは好きなように書いていいよ



535 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:59:43 ]
さんじのおやつはぶんめいどー

536 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 21:00:33 ]
534 おまえねーじゃますんなよw

537 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 21:09:53 ]
俺の言った設計通りに動いてくれるならどんな書き方したっていいよ
保守するのはお前らだし

538 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 21:46:04 ]
>保守するのはお前らだし
そう思ってたころもありました・・・


539 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 22:39:59 ]
Enum.ToStringはメタデータ検索するから遅くなるって言ってるけど
じゃあEnum.GetNamesとかはどうなの?遅くならんの?

540 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 22:48:22 ]
ウダウダここに書いてる間に試せると思うんですが…

541 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 22:49:04 ]
俺とお前じゃ時間単価が違うんだよ

542 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 22:49:59 ]
GetNamesやGetValuesは中でキャッシュされてるからそんなに遅くない
といっても配列の作成とコピーは毎回行われるので注意

543 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 22:51:32 ]
ToStringよりはずっと速い。


544 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 23:14:44 ]
全然関係ないけど、プロパティをリフレクションで取得したりするコードで、
リフレクションは遅いからプロパティ情報をキャッシュするのだ!って言って
DictionaryとかにPropertyInfoやMethodInfoをキャッシュしてるサンプル見るんだけど、
どうせキャッシュするならデリゲートにしとけっつの。
圧倒的に速いしリフレクション特有の問題も起きない。




545 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 23:29:47 ]
GetMethodとかは中でキャッシュされるからPropertyInfoやMethodInfoを
キャッシュするのはあまり意味がないとかいうのをMSDN Magagineあたりで読んだ覚えがある。
パフォーマンスのためなら>>544の言うようにデリゲートをキャッシュする。

546 名前:545 mailto:sage [2009/08/03(月) 23:34:54 ]
www.microsoft.com/japan/msdn/msdnmag/issues/05/07/Reflection/default.aspx
あった

547 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 23:47:28 ]
メンバの検索には結構時間がかかったりもする(条件によってことなる)ので無意味ではないけど
デリゲートをキャッシュする効果に比べたら全く無意味と言っていいレベルだな。


548 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 23:55:42 ]
>>541
だったらなおさら時間を大事にしろよ。
頭悪いのかね。

549 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 00:46:07 ]
うん

550 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 01:20:09 ]
くだらねー

551 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 01:53:58 ]
うん

552 名前:デフォルトの名無しさん [2009/08/04(火) 18:11:07 ]
質問です。

領域を確保したbyte型の配列を以下の関数Funcに渡したいのですが、
どうすればいいのでしょうか?

byte[] bytes = new data[640*480];
Func(????)


void Func(ref byte data){
}



553 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 18:14:22 ]
int n = 0; //好きな数字を入れてね!
Func(ref bytes[n]);

554 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 18:14:40 ]
void Func(byte data[]){
}

何でこうなるのか考えてから次に進めよ



555 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 18:18:01 ]
cじゃねえんだから

void Func(byte[] data)

556 名前:デフォルトの名無しさん [2009/08/04(火) 18:26:09 ]
>>553,554,555さん
レス有難う御座います。

この場合、関数の型を以下で定義するべきなのは重々承知しております。
void Func( byte [] data)

ただ、この関数は他社提供のクラスライブラリの為、替えることができません。

これってやっぱり、関数の定義ミスでしょうか?

ちなみに、この関数は某大手電卓メーカの提供しているクラスライブラになります。
 

557 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 18:27:03 ]
>>556
それなら使い方をサポートに問い合わせるのが一番だろ

558 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 18:31:21 ]
>>557さん
恥ずかしながら、保守契約が切れていてけないのです

・・・ちょっと見落としていたけど、553の案で行けそうな気がしてきた

559 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 18:33:58 ]
553の方法でアクセスできました!!!!!
すいません。 有難うございます。

3時間ぐらいハマってた・・・

皆様有難う御座いました。

560 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 18:34:14 ]
なんじゃそりゃあ。

561 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 18:35:35 ]
なんつうライブラリだ・・・・
要は配列の中の1バイトを書き換えるプログラムってことか…?

562 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 18:37:30 ]
まさかのネタがマジレス

563 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 18:48:06 ]
ネタじゃないです。

ネイティブコードのラッパライブラリみたいです。
サンプルさえあれば、こんなにハマることは無かったのですが、

本当に助かりました。感謝!!!!

564 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 18:52:54 ]
中でえげつないことしてそうだなあ



565 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 18:57:52 ]
なんというか・・・・
これはひどそうな匂いがぷんぷんしてくるな

566 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 19:26:21 ]
ライブラリの機能や仕様が不明なんだから何とも言えん。
ぱっと見た感じで怪しいのは確かだが。


567 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 19:36:16 ]
C++ の

 void Func(byte* data)

を、C# に持ってくるときに

 void Func(byte[] data)

にするべきはずのところを

 void Func(ref byte data)

にしただけだと思う
まあわかりやすい間違いだな

568 名前:デフォルトの名無しさん [2009/08/04(火) 19:57:55 ]
こんばんわ
文系のプログラムわからないぼくですが
仕事の兼ね合い覚えないといけないことになりました。

やはり先に本をかって進めていったほうがよろしいですか?

569 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 20:01:21 ]
あたりまえ
いくらPCに詳しくても,プログラミングでは「なんとなく触ってたら使える」というのはありえません

570 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 20:03:09 ]
>>568
それってC#でなきゃいけないの?

571 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 20:08:39 ]
>>570
はい、C#で開発なんで
それでないといけないと思います。

本で初心者用って書いてあればなんでも平気ですかね。


572 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 20:10:16 ]
C# とだけ書いてある本ではなく,Visual C# と書いてある本を選びましょう。
いきなり前者に挑むと挫折します。

573 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 20:12:58 ]
しかし門外漢を使おうなんて余程手が足りないのね
ここからが本当の地獄だ

574 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 20:17:23 ]
>>572
助かります。
2種類あったのか・・・

visualstudio2005を使うんですが、C#って書いてあったようなきがしたけど
visualC#ってことでいいのでしょうか?



575 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 20:22:36 ]
VisualStudio2005は複数のプログラミング言語が使える。
その中でC#を使うならVisualC#2005を使うことになる。
二種類あるっていうのは,例えるなら>>572の前者は英文法の本,後者は英会話の本だ。

576 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 20:23:44 ]
>>575
なんと・・・・
VisualC#で探します、ほんと助かりました。

前者後者で差が結構ありますね¥・・

577 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 20:30:01 ]
>>574
プログラミング未経験者がいきなり本で独学でC#とか俺は無謀だと思う。
特別地頭がいいなら別だけど。
こういうスレの連中は変な見栄と気取りがあるから認めないと思うけどねw

いきなりC#でも人に直接教えて貰えばなんとかなるかもしれんけど、
そういう訳にいかんのかな。

578 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 20:30:59 ]
だから地獄の始まりだと言ってるだろ

579 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 20:32:57 ]
>>577
うちの会社教えてくれる人いないんですよ・・・
これやってねって言った人も始めてだし。

今まで仕事・・・まぁ新入社員だけど
プログラミング教えてもらったことなど一度もないんです。
本渡されてどうぞ?しかないです。

580 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 20:37:02 ]
まあとりあえず触ってみりゃいいんじゃない
「VisualC#入門」みたいな本買ってきて一通り打ち込んで動かしてみてそれからだな
プログラミング自体に興味が持てれば次は文法の本に行けばいいし無理ならキャリアスクールへどうぞ

581 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 20:45:10 ]
そのレベルの初心者なら、最初は研修に行かせてもらったほうが早いんだけどな。
最初は入門書は定番の有名なのより、
手取り足取りタイプの超入門書を2〜3冊読み漁るのがいい。
物足りなくなったら定番に移行。

582 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 20:55:54 ]
>>577
C#が無謀なら何ならいいの?

583 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 20:56:17 ]
研修とかスクールって行った事ないけど意味あるの?
実際に仕事したことのない講師が教えてそうで怖いわ。

584 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 21:10:35 ]
研修とかプログラム受けると
お金になるとききました
(経理的な意味で)



585 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 21:34:40 ]
msdn.microsoft.com/ja-jp/library/ms229043%28VS.80%29.aspx

>複数の単語で構成されるパブリック メンバ、型、および名前空間の名前には、常に Pascal 形式を使用してください。

ってあるけどプライベートなメンバの命名規則はどこにあるの?

586 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 21:35:54 ]
公式には原則自由
それ「クラスライブラリ開発者向け」のガイドラインだからアセンブリの外から見えないメンバについては
どうでもいいの

587 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 21:37:02 ]
すばやい返答ありがとう

588 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 21:49:37 ]
ちなみに非推奨のアンダーバー始まりを使ってます。

589 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 21:52:15 ]
Cじゃないんだから取り立てて禁止というわけじゃないよ。

590 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 21:55:53 ]
むしろMSが公開してるC#で書かれたコードでは _camelCase が多数派

591 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 22:29:41 ]
C#って結構とっつきやすい方だと思うんだけどなぁ。


592 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 22:32:20 ]
他の言語の経験がある人にはね
もともとそういうコンセプト

593 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 22:38:09 ]
他の言語使ったことないと結構きつい気がするよ

594 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 22:40:13 ]
他のってCとjavaだけだろ。



595 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 23:07:54 ]
delphiから移行したけど結構簡単だった

596 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 23:09:54 ]
delphi とは腹違いの兄弟みたいなものだからなぁ






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

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

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