前スレ
C#は糞
ttp://pc12.2ch.net/test/read.cgi/tech/1246520657/
探検
C#は糞2.0
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2010/04/30(金) 15:25:27618デフォルトの名無しさん
2010/07/22(木) 14:56:29 可哀想だから言ってやるなよ
619デフォルトの名無しさん
2010/07/22(木) 15:53:51 ラムダも使えないとか冗談でしょ。釣られるなよ、お前ら。
C++ でも Boost 使ってればラムダ使うし、冗談にもほどがある。
C++ でも Boost 使ってればラムダ使うし、冗談にもほどがある。
620デフォルトの名無しさん
2010/07/22(木) 16:08:24621デフォルトの名無しさん
2010/07/22(木) 16:30:12 世間ではプログラミング言語なんか使わんよ、機械語で十分。とか豪語していた先達の
後を追わないでくださいねw
後を追わないでくださいねw
622デフォルトの名無しさん
2010/07/22(木) 16:39:19 井の中の蛙
623デフォルトの名無しさん
2010/07/22(木) 17:06:25624デフォルトの名無しさん
2010/07/23(金) 12:34:07 ラムダは便利だと思うけどLINQどうなのかね?
625デフォルトの名無しさん
2010/07/23(金) 13:01:58 使い方覚えたら今までやってた事が馬鹿らしく思えてくる便利さ
そしてLINQ使えないバージョンで開発する時に軽く欝になる
そしてLINQ使えないバージョンで開発する時に軽く欝になる
626デフォルトの名無しさん
2010/07/24(土) 21:08:11 LINQなかったら生きていけないでしょ
627デフォルトの名無しさん
2010/07/28(水) 15:58:35 C#のジェネリック、もっと便利になりませんかねぇ
C++だとかなりコード減らせるんですけど。
C++テンプレートで肥大化するってのも書き方次第だし。
C++だとかなりコード減らせるんですけど。
C++テンプレートで肥大化するってのも書き方次第だし。
628デフォルトの名無しさん
2010/08/01(日) 10:16:49 ジェネリックは実行時に展開されるからC++みたいな言葉遊びは原理的にできない
コンパイル後もポータブルでないといけないからC#の言語仕様に依存する要素を残すわけにはいかない
コンパイル後もポータブルでないといけないからC#の言語仕様に依存する要素を残すわけにはいかない
629デフォルトの名無しさん
2010/08/01(日) 12:21:22 ジェネリクスはC++>>(超えられない壁)>>C#>>Javaって感じだな
630デフォルトの名無しさん
2010/08/01(日) 16:32:33 genericsに関しては、C#>>Java>>(超えられない壁)>>C++ だろ
631デフォルトの名無しさん
2010/08/01(日) 19:03:46 ジェネリックならそうなるな。
632デフォルトの名無しさん
2010/08/01(日) 20:03:17 実行時とはいえ特殊化される(されない場合が多いけど特殊化されているものとして扱える)分
Javaよりはずっとテンプレートに近い
Javaよりはずっとテンプレートに近い
633デフォルトの名無しさん
2010/08/01(日) 21:51:15 テンプレートは同じような型を自動的に展開してくれるだけ。非常に高度なマクロといってもいい。
ジェネリクスは根本的に異なる。
ジェネリクスは根本的に異なる。
634デフォルトの名無しさん
2010/08/01(日) 21:54:08 型→型に関するコード
635デフォルトの名無しさん
2010/08/02(月) 08:49:46 .NETのジェネリックはJITコンパイラレベルのテンプレートみたいなもの。
ジェネリック型を特殊化する機能がランタイムに備わってる。
実際には、コードが型ごとに展開されるのは値型の場合のみで、
参照型の場合は共通のコードが使いまわされるけど、フィールドなどはそれぞれ
別に作られるから気にする必要なし。
ジェネリック型を特殊化する機能がランタイムに備わってる。
実際には、コードが型ごとに展開されるのは値型の場合のみで、
参照型の場合は共通のコードが使いまわされるけど、フィールドなどはそれぞれ
別に作られるから気にする必要なし。
636デフォルトの名無しさん
2010/08/02(月) 12:22:16 んー、よくわからないけど、確実に関数インターフェイスと本体を
用意しなければいけないから現状以上は難しいってこと?
用意しなければいけないから現状以上は難しいってこと?
637デフォルトの名無しさん
2010/08/02(月) 19:01:18 a + b という式があったとして、これが実際にどういうコードになるかは型によって違うだろ?
整数同士の加算の命令になるかもしれないし浮動小数点かもしれないし演算子オーバーロードかもしれない。
いずれにせよコンパイル後には a + b という「意図」は失われる。
コンパイル時に処理されるテンプレートの場合は置き換えてからコンパイルするだけだからいいんだけど,
.NETのジェネリックは実行時に処理されるので先にコンパイルしとかないといけない。
だから a + b みたいな、型によってコードが変わるようなものは残せないわけ。
整数同士の加算の命令になるかもしれないし浮動小数点かもしれないし演算子オーバーロードかもしれない。
いずれにせよコンパイル後には a + b という「意図」は失われる。
コンパイル時に処理されるテンプレートの場合は置き換えてからコンパイルするだけだからいいんだけど,
.NETのジェネリックは実行時に処理されるので先にコンパイルしとかないといけない。
だから a + b みたいな、型によってコードが変わるようなものは残せないわけ。
638デフォルトの名無しさん
2010/08/02(月) 19:04:06 で、どこの誤爆?
639デフォルトの名無しさん
2010/08/03(火) 01:15:45 どう読めば他のスレからの誤爆だと誤読できるんだ?
640デフォルトの名無しさん
2010/08/03(火) 07:07:36 >>639
あまりに内容があれなので、皮肉ってるんだろ。
あまりに内容があれなので、皮肉ってるんだろ。
641デフォルトの名無しさん
2010/08/24(火) 16:01:22 あーほんとにC++のconstが恋しいわ
642デフォルトの名無しさん
2010/08/24(火) 16:08:39 const使うなら徹底的にやらないと意味がないから
さまざまな言語の最大公約数的な仕様の.NETでは難しい
さまざまな言語の最大公約数的な仕様の.NETでは難しい
643デフォルトの名無しさん
2010/10/04(月) 13:50:21 C#やってるやつは無能の代表
644デフォルトの名無しさん
2010/10/05(火) 00:51:17645デフォルトの名無しさん
2010/10/05(火) 02:41:11 C++やってる奴が糞
646デフォルトの名無しさん
2010/10/05(火) 04:26:15 >>643
スレタイみような
スレタイみような
647デフォルトの名無しさん
2010/10/07(木) 08:48:37 ぶっちゃけ、糞であったVBを喜ばすためにできたのがC#
648デフォルトの名無しさん
2010/10/07(木) 09:30:11 実用:C/C++/Java/PHP
Tool:Java/VB
C#<・・・
Tool:Java/VB
C#<・・・
649デフォルトの名無しさん
2010/10/07(木) 09:51:49 C#って空き缶拾いに等しいよね
650デフォルトの名無しさん
2010/10/07(木) 13:25:51 なんかやってると、やたらと脱力感に襲われてくるのはなぜだろう・・
651デフォルトの名無しさん
2010/10/07(木) 16:50:30 最初からジェネリックを考慮して設計されていれば
良い言語になっていたと思われる。
そういえばインターフェイスは最初からあったのかね?
良い言語になっていたと思われる。
そういえばインターフェイスは最初からあったのかね?
652デフォルトの名無しさん
2010/10/07(木) 17:00:13 >最初からジェネリックを考慮して設計されていれば
Javaの悪口言うな
Javaの悪口言うな
653デフォルトの名無しさん
2010/10/07(木) 21:36:34654デフォルトの名無しさん
2010/10/07(木) 21:39:13 genericsに関しては、まともに普及している言語の中では、もっともすぐれているけどなあ。
655デフォルトの名無しさん
2010/10/07(木) 22:48:32656デフォルトの名無しさん
2010/10/08(金) 02:31:10657デフォルトの名無しさん
2010/10/08(金) 03:19:45 Java と比べても今更感があるな。
658デフォルトの名無しさん
2010/10/08(金) 12:23:55 Javaのgenericsは使ってる連中から見ても微妙だと思うだろ。
659デフォルトの名無しさん
2010/10/08(金) 12:40:12 Javaのgenericsは実装のアプローチはC++に近いけど
C#のほうがずっとテンプレートに似た動作をする
C#のほうがずっとテンプレートに似た動作をする
660デフォルトの名無しさん
2010/10/08(金) 13:42:09 単なる糖衣構文だから
ジェネリック型の配列を作れない
値型を入れることができない
実行時にメタデータを参照することができない
ジェネリック型の例外が使えない
などの制約がある
ジェネリック型の配列を作れない
値型を入れることができない
実行時にメタデータを参照することができない
ジェネリック型の例外が使えない
などの制約がある
661デフォルトの名無しさん
2010/10/09(土) 12:26:40 間違ってJavaのアンチスレに来てしまったようだ
662デフォルトの名無しさん
2010/10/09(土) 13:08:03 >>651
コイツのせい
コイツのせい
663デフォルトの名無しさん
2010/10/10(日) 12:46:25 C#, VB.net, javaはクソすぎ
メモリ管理も出来ない素人向けのツールだからな
上記言語は正しくは無能な初心者のための生存保護のための言語である
初心者を脱出したいヤカラは
C++でネイティブあぷりつくっとけや
メモリ管理も出来ない素人向けのツールだからな
上記言語は正しくは無能な初心者のための生存保護のための言語である
初心者を脱出したいヤカラは
C++でネイティブあぷりつくっとけや
664デフォルトの名無しさん
2010/10/10(日) 18:47:13 >>663
C++もGCでないだけでメモリ管理は自動になるように実装する。
C++もGCでないだけでメモリ管理は自動になるように実装する。
665デフォルトの名無しさん
2010/10/10(日) 20:47:28 >>663
Objective-Cのretainはどう思う?
Objective-Cのretainはどう思う?
666デフォルトの名無しさん
2010/10/10(日) 22:24:01 C++ 使うだけでメモリ管理できてる気になってるなんて。。。
667デフォルトの名無しさん
2010/10/11(月) 16:23:46 個人的なWinアプリを作るのにC#ほど楽な言語は無い。
668デフォルトの名無しさん
2010/10/12(火) 10:21:14 それゆえ、C#は糞と言われる根源である
頭が悪くてもできるのはC#
たが、質も悪い
職人が作った鞄と、受刑者は身障者が作った鞄、
どちらがいいかと考えれば自ずと分かる
分からず、C#を使い続けているのは糞の極みである
頭が悪くてもできるのはC#
たが、質も悪い
職人が作った鞄と、受刑者は身障者が作った鞄、
どちらがいいかと考えれば自ずと分かる
分からず、C#を使い続けているのは糞の極みである
669デフォルトの名無しさん
2010/10/12(火) 21:00:44 >>668
比喩を正しく対応させられないお前が糞なのは確定
比喩を正しく対応させられないお前が糞なのは確定
670デフォルトの名無しさん
2010/10/13(水) 06:45:30671デフォルトの名無しさん
2010/10/13(水) 06:46:21 メッセージボックスを親ウィンドウの中央に出すのに苦労しました
672デフォルトの名無しさん
2010/10/13(水) 09:28:35 C#が難しい言ってるやつは低能
プログラムやる資格なし
他の人に迷惑だから頭悪いやつはやらないでいただきたい
プログラムやる資格なし
他の人に迷惑だから頭悪いやつはやらないでいただきたい
673デフォルトの名無しさん
2010/10/13(水) 15:05:54 >666
初心者にはわからないところだからw
ムリしてつっこまなくても…w
初心者にはわからないところだからw
ムリしてつっこまなくても…w
674デフォルトの名無しさん
2010/10/15(金) 22:56:18 C#っていうより.NETの話かもだけど、何で構造体ってnullにできないの?
nullできないならクラスの方が便利じゃないか???
JavaではDimensionもRectangleもnullにできるから、そこはJavaの方が便利。
nullできないならクラスの方が便利じゃないか???
JavaではDimensionもRectangleもnullにできるから、そこはJavaの方が便利。
675デフォルトの名無しさん
2010/10/15(金) 23:00:24 よくわかってないのに糞って…
値型として宣言した変数にnullを代入できないのはC++やJavaでも当たり前のこと。
Javaではintなどのプリミティブ型の変数にnullを代入できないのと同じ。
ちなみにC#ではnullableという機能があって、擬似的に値型にnullを代入できる。
値型として宣言した変数にnullを代入できないのはC++やJavaでも当たり前のこと。
Javaではintなどのプリミティブ型の変数にnullを代入できないのと同じ。
ちなみにC#ではnullableという機能があって、擬似的に値型にnullを代入できる。
676デフォルトの名無しさん
2010/10/15(金) 23:05:14 >>675
それで、メソッドがつけられたりいろいろ昨日盛りだくさんな構造体を、全部クラスとして
再定義したらどんな不都合が考えられますか?たとえばDateTime, Rectangle等は
nullにならない以外はほとんどクラスと変わらない気がするんだが?
たとえば日付をパースする共通部品とかを作ったとして、パース失敗時の異常戻り値
をどうするか。java.util.Dateならnullを返せばいいわけだが、DateTimeはnullを返せない。
それで、メソッドがつけられたりいろいろ昨日盛りだくさんな構造体を、全部クラスとして
再定義したらどんな不都合が考えられますか?たとえばDateTime, Rectangle等は
nullにならない以外はほとんどクラスと変わらない気がするんだが?
たとえば日付をパースする共通部品とかを作ったとして、パース失敗時の異常戻り値
をどうするか。java.util.Dateならnullを返せばいいわけだが、DateTimeはnullを返せない。
677デフォルトの名無しさん
2010/10/15(金) 23:42:51 遅い。GCの負担になる。ネイティブコードとの連携がやりづらい。
例えば、Java・.NETとも、Rectangleを返すメソッドは基本的には常にコピーを作って返す。
内部のフィールドに持ってるインスタンスをそのまま返すとカプセル化が壊れるから。
そういうときにクラスだと非常に非効率。
配列アクセスの速度なんかも全然違う。
例えば、Java・.NETとも、Rectangleを返すメソッドは基本的には常にコピーを作って返す。
内部のフィールドに持ってるインスタンスをそのまま返すとカプセル化が壊れるから。
そういうときにクラスだと非常に非効率。
配列アクセスの速度なんかも全然違う。
678デフォルトの名無しさん
2010/10/16(土) 00:50:12 ぬるぽ
679デフォルトの名無しさん
2010/10/16(土) 01:05:34 けど今時Rectangleの複写ぐらいで遅くなるマシンなんてないよな。
前から思っていたんだが、もしかして.NETってGCがショボい?
.NETのGCアルゴリズムって全く話題にならないよな。ひょっとしてモノリシック
なヒープをシングルスレッドでデフラグしてたりする?
前から思っていたんだが、もしかして.NETってGCがショボい?
.NETのGCアルゴリズムって全く話題にならないよな。ひょっとしてモノリシック
なヒープをシングルスレッドでデフラグしてたりする?
680デフォルトの名無しさん
2010/10/16(土) 08:24:29 >>679
いろいろアンチがやってくるが、これほどJavaを理解していないやつも珍しい。
いろいろアンチがやってくるが、これほどJavaを理解していないやつも珍しい。
681デフォルトの名無しさん
2010/10/16(土) 09:47:25 確実に遅くはなる。それが問題になるかどうかは使い方次第。
ベクトル型のインスタンスを大量に作って計算するような状況では使い物にならない。
なんでJavaはプリミティブ型を特別扱いしてるかわかる?
オブジェクトにすると「遅いから」だよ。それと全く同じこと。
ベクトル型のインスタンスを大量に作って計算するような状況では使い物にならない。
なんでJavaはプリミティブ型を特別扱いしてるかわかる?
オブジェクトにすると「遅いから」だよ。それと全く同じこと。
682デフォルトの名無しさん
2010/10/18(月) 01:52:20 Java のGC が話題になるのはただ単に Java が有名だから。
実装が素晴らしいわけではない。
実装が素晴らしいわけではない。
683デフォルトの名無しさん
2010/10/18(月) 08:45:23 Java の GC はいろいろがんばってるよ。
すくなくともそこらのスクリプト系言語の実装とは比較にならない。
MS 製 Java の GC は Lisp のすごい人が書いたとか伝説もあったしなー。
すくなくともそこらのスクリプト系言語の実装とは比較にならない。
MS 製 Java の GC は Lisp のすごい人が書いたとか伝説もあったしなー。
684デフォルトの名無しさん
2010/10/18(月) 09:10:42 379 デフォルトの名無しさん [sage] 2010/10/18(月) 07:49:37 ID: Be:
suge------
http://www.atmarkit.co.jp/fdotnet/csharp4/csharp4_04/csharp4_04_01.html
380 デフォルトの名無しさん [sage] 2010/10/18(月) 08:40:52 ID: Be:
オプション引数・名前付き引数 (C# によるプログラミング入門)
http://ufcpp.net/study/csharp/sp4_optional.html
これか。C#にデフォルト引数がついてなかったとは知らなかったな。
呼び出し側で評価されるゆえの実装の都合なのかこれ
名前付き引数がVBにあったというのは衝撃的
しかし何故C#4?
suge------
http://www.atmarkit.co.jp/fdotnet/csharp4/csharp4_04/csharp4_04_01.html
380 デフォルトの名無しさん [sage] 2010/10/18(月) 08:40:52 ID: Be:
オプション引数・名前付き引数 (C# によるプログラミング入門)
http://ufcpp.net/study/csharp/sp4_optional.html
これか。C#にデフォルト引数がついてなかったとは知らなかったな。
呼び出し側で評価されるゆえの実装の都合なのかこれ
名前付き引数がVBにあったというのは衝撃的
しかし何故C#4?
685デフォルトの名無しさん
2010/10/18(月) 10:30:47 デフォルトの引数は色々問題ありなので、アンダースが反対していたそうです。
686デフォルトの名無しさん
2010/10/18(月) 12:32:31 デフォルト引数がサポートされた最大の理由はCOM相互運用のため。
VB.NETと比べたときに唯一C#が致命的に弱い部分だったから。
VB.NETと比べたときに唯一C#が致命的に弱い部分だったから。
687デフォルトの名無しさん
2010/10/18(月) 12:37:36 ダックタイピングも同時に導入されたので、COMはオートメーションだけサポートということでもよかったんじゃないかとは思う。
688デフォルトの名無しさん
2010/10/18(月) 16:44:10 C#の場合、デフォルト引数が問題なのは、オーバーロードの解決が
複雑になったりすることよりも、アセンブリのバージョン間の互換性が失われることが問題。
デフォルト値がコンパイル時定数として呼び出し引数に埋め込まれてしまうので
クラスライブラリで使うとデフォルト値を二度と変更できない。
アセンブリ外から見えるメンバにデフォルト引数が使われてると
VSのコード分析ツールやFxCopが警告を出す。
複雑になったりすることよりも、アセンブリのバージョン間の互換性が失われることが問題。
デフォルト値がコンパイル時定数として呼び出し引数に埋め込まれてしまうので
クラスライブラリで使うとデフォルト値を二度と変更できない。
アセンブリ外から見えるメンバにデフォルト引数が使われてると
VSのコード分析ツールやFxCopが警告を出す。
689デフォルトの名無しさん
2010/10/19(火) 21:52:02 いつの間にかデフォルト引数出来るようになってたのか。
知らんかった。
ところでこのobject型使いまくりの.NETライブラリを見てくれ
こいつをどう思う?
知らんかった。
ところでこのobject型使いまくりの.NETライブラリを見てくれ
こいつをどう思う?
690デフォルトの名無しさん
2010/10/19(火) 21:57:34 言うほどobject使われてないだろ
691デフォルトの名無しさん
2010/10/27(水) 11:36:00 void* みたいなもんじゃね?
692デフォルトの名無しさん
2010/10/27(水) 22:18:30 public struct AnyData {
public object field1;
public object field2;
public object field3;
public object field4;
}
どうだ、すごいだろ?何でも入るぞ?
まあ仕事でこれは見たこと無いけど、DBのテーブルが全部VARCHARで列名がCOL1〜COL30
みたいのは本当に見たことがある。テーブル名はたしか、TABLE30とかだった。
見た瞬間机を蹴飛ばしたい気分になったけどね。
public object field1;
public object field2;
public object field3;
public object field4;
}
どうだ、すごいだろ?何でも入るぞ?
まあ仕事でこれは見たこと無いけど、DBのテーブルが全部VARCHARで列名がCOL1〜COL30
みたいのは本当に見たことがある。テーブル名はたしか、TABLE30とかだった。
見た瞬間机を蹴飛ばしたい気分になったけどね。
693デフォルトの名無しさん
2010/10/28(木) 00:38:47 C#はコーディングが楽になった分格段にC++より糞コードを生み出す温床になってるよな
694デフォルトの名無しさん
2010/10/28(木) 01:28:15 >>693
C++の絶望的糞コードとC#の絶望的糞コードなら、C#のコードのほうがまだ対応出来る。
C++の絶望的糞コードとC#の絶望的糞コードなら、C#のコードのほうがまだ対応出来る。
695デフォルトの名無しさん
2010/10/28(木) 22:08:36 javaのthrowsみたいに例外制御の流れを強制できると便利なんだけどな。
696デフォルトの名無しさん
2010/10/28(木) 22:14:11 >>694
根拠は?
根拠は?
697デフォルトの名無しさん
2010/10/28(木) 22:23:31 >>695
あんなもん主要言語では後にも先にもJavaしか採用しないクソ機構じゃねーか
あんなもん主要言語では後にも先にもJavaしか採用しないクソ機構じゃねーか
698デフォルトの名無しさん
2010/10/28(木) 22:45:08 throws は伝染するから嫌われる
せっかく多重継承禁止したのにな
せっかく多重継承禁止したのにな
699デフォルトの名無しさん
2010/10/28(木) 22:47:17 アンダースがthrowsを導入しなかった理由をどこかの講演で言ってたと思う。
700デフォルトの名無しさん
2010/10/29(金) 13:24:17 よくJava信者が、インターフェイスをちゃんと設計して例外をラップすれば
後でthrowsリストを増やすような事態にはならないというけど
それって突き詰めれば結局 throws Exception にすればいいと言ってるのと同じなんだよな。
hogeメソッドが throws HogeFailedException となっていたからって
それをどう例外処理しろというのか。
後でthrowsリストを増やすような事態にはならないというけど
それって突き詰めれば結局 throws Exception にすればいいと言ってるのと同じなんだよな。
hogeメソッドが throws HogeFailedException となっていたからって
それをどう例外処理しろというのか。
701デフォルトの名無しさん
2010/10/29(金) 16:10:54 要するにぬるぽにしなさいって事か
702デフォルトの名無しさん
2010/10/30(土) 14:56:06 このスレで糞が何回でたか、出現数をカウントするプログラムを作りなさい
703デフォルトの名無しさん
2010/10/30(土) 15:58:06 print "select count(res) from threads where host='hibari' and board='tech' and thread=1272608727 and body like '%糞%';"
704デフォルトの名無しさん
2010/11/01(月) 21:14:11 var cnt=(from i in alltext where i.Equals('糞') select i).Count();
とうんこしながら書いてみる
とうんこしながら書いてみる
705デフォルトの名無しさん
2010/11/02(火) 00:44:32 >>704
var cnt = alltext.Count('糞'.Equals);
var cnt = alltext.Count('糞'.Equals);
706デフォルトの名無しさん
2010/11/02(火) 00:48:43 public static void main(String[] args) throws Exception {
URL target = new URL("http://hibari.2ch.net/tech/dat/1272608727.dat");
InputStream in = null;
int unkoCnt = 0;
try {
HttpURLConnection ucon = (HttpURLConnection) target.openConnection();
ucon.setRequestProperty("User-Agent", "Monazilla/1.00 (UnkoCounter/1.0)");
ucon.setRequestProperty("Accept-Encoding", "gzip, deflate");
ucon.setRequestProperty("Accept", "*/*");
in = ucon.getInputStream();
String enc = ucon.getContentEncoding();
if (enc != null && enc.equals("gzip") && (in instanceof GZIPInputStream) == false) in = new GZIPInputStream(in);
if ( enc != null && enc.equals("deflate") && (in instanceof DeflaterInputStream) == false) in = new DeflaterInputStream(in);
in = new BufferedInputStream(in, 65536);
BufferedReader reader = new BufferedReader(new InputStreamReader(in, "Windows-31J"), 8192);
String line = null;
while ( (line = reader.readLine()) != null ) {
String[] ary = line.split("<>");
if ( ary[0].indexOf("あぼーん") != -1 || ary.length < 3 )
continue;
String honbun = ary[3];
if ( countKuso(honbun) != -1 )
unkoCnt++;
}
}finally {
if ( in != null ) in.close();
}
System.out.printf("%d個のウンコを発見。\n", unkoCnt);
}
<<続く>>
URL target = new URL("http://hibari.2ch.net/tech/dat/1272608727.dat");
InputStream in = null;
int unkoCnt = 0;
try {
HttpURLConnection ucon = (HttpURLConnection) target.openConnection();
ucon.setRequestProperty("User-Agent", "Monazilla/1.00 (UnkoCounter/1.0)");
ucon.setRequestProperty("Accept-Encoding", "gzip, deflate");
ucon.setRequestProperty("Accept", "*/*");
in = ucon.getInputStream();
String enc = ucon.getContentEncoding();
if (enc != null && enc.equals("gzip") && (in instanceof GZIPInputStream) == false) in = new GZIPInputStream(in);
if ( enc != null && enc.equals("deflate") && (in instanceof DeflaterInputStream) == false) in = new DeflaterInputStream(in);
in = new BufferedInputStream(in, 65536);
BufferedReader reader = new BufferedReader(new InputStreamReader(in, "Windows-31J"), 8192);
String line = null;
while ( (line = reader.readLine()) != null ) {
String[] ary = line.split("<>");
if ( ary[0].indexOf("あぼーん") != -1 || ary.length < 3 )
continue;
String honbun = ary[3];
if ( countKuso(honbun) != -1 )
unkoCnt++;
}
}finally {
if ( in != null ) in.close();
}
System.out.printf("%d個のウンコを発見。\n", unkoCnt);
}
<<続く>>
707デフォルトの名無しさん
2010/11/02(火) 00:49:36 >>706の続き
private static int countKuso(String line) {
int idx = -1;
int ret = 0;
while ((idx = line.indexOf('糞', idx)) != -1) {
ret++;
if (++idx == line.length()) break;
}
return ret;
}
private static int countKuso(String line) {
int idx = -1;
int ret = 0;
while ((idx = line.indexOf('糞', idx)) != -1) {
ret++;
if (++idx == line.length()) break;
}
return ret;
}
708デフォルトの名無しさん
2010/11/02(火) 00:53:11 すまん間違ってる。「if (countKuso(honbun)」のブロックは次に修正
誤)
if ( countKuso(honbun) != -1 )
unkoCnt++;
}
正)
unkoCnt += countKuso(honbun);
今140個あるはずだ。
誤)
if ( countKuso(honbun) != -1 )
unkoCnt++;
}
正)
unkoCnt += countKuso(honbun);
今140個あるはずだ。
709デフォルトの名無しさん
2010/11/02(火) 22:32:04 VB.NETでもなくC++でもなくC#を何で選ぶのかな。
VB.NETならVB6と違いはあるもののVB用の組み込み関数があるし、
C++ならCおよびC++の標準ライブラリが使えるのに。
VB.NETならVB6と違いはあるもののVB用の組み込み関数があるし、
C++ならCおよびC++の標準ライブラリが使えるのに。
710デフォルトの名無しさん
2010/11/02(火) 22:34:17 VB.NETはタイプ量が多い
C++は標準ライブラリだけではとても商品など作れない
C++は標準ライブラリだけではとても商品など作れない
711デフォルトの名無しさん
2010/11/02(火) 22:45:29 C++なんて、プログラミングが面倒なくせに、謎のエラーが出まくって、デバッグもしにくい。しかも、脆弱性の主な原因。
712デフォルトの名無しさん
2010/11/02(火) 22:59:17 TCP/IP使う制御系システムとかだと、もうCはやめた方がいいんじゃないか?
昔はメモリの書き過ぎはただの単純バグで済まされたが、今では脆弱性につながるかもしれない
重大問題だからな。ユーザー企業が脆弱性対策に注視すればするほど、CやC++は不人気になるだろ。
VBはusingブロックがなかったり、Microsoftがこれからプログラム始める人はC#推奨とか言ってたり、
要するにVB6しかできないヤツをサポートする必要があるって言う意図に見えてイヤだし、構文も
長くて読みづらいと思う。本当はC#も中括弧が勝手に改行されるのはあんまり好きじゃないんだけど・・・
昔はメモリの書き過ぎはただの単純バグで済まされたが、今では脆弱性につながるかもしれない
重大問題だからな。ユーザー企業が脆弱性対策に注視すればするほど、CやC++は不人気になるだろ。
VBはusingブロックがなかったり、Microsoftがこれからプログラム始める人はC#推奨とか言ってたり、
要するにVB6しかできないヤツをサポートする必要があるって言う意図に見えてイヤだし、構文も
長くて読みづらいと思う。本当はC#も中括弧が勝手に改行されるのはあんまり好きじゃないんだけど・・・
713デフォルトの名無しさん
2010/11/02(火) 23:09:01714デフォルトの名無しさん
2010/11/02(火) 23:14:08 何と、このスレを普通にテキスト処理するわけでなく、
SQLで処理することができるのか。そんな技術があるのか。
SQLで処理することができるのか。そんな技術があるのか。
715デフォルトの名無しさん
2010/11/02(火) 23:16:38 俺にはC#とJavaのどちらのコードなのか見分けることができない、恥か。
716デフォルトの名無しさん
2010/11/02(火) 23:17:45 C#のSocket使ったプログラムを書くと定期的にCPU使用率が100%近くに
跳ね上がるのは俺だけか?
C++使ったらそういう事は起きないので.NETの問題かと思うんだが
跳ね上がるのは俺だけか?
C++使ったらそういう事は起きないので.NETの問題かと思うんだが
717デフォルトの名無しさん
2010/11/02(火) 23:37:18 再現できる最小コードplz
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 米大統領報道官「日本と強固な同盟維持、中国とも協力」 [少考さん★]
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★2 [蚤の市★]
- ミス・ユニバース フィンランド代表の「つり目」写真が波紋… 本人釈明も批判やまず 協会謝罪「徹底的に検証」へ [冬月記者★]
- 【おこめ券】鈴木憲和農相 小泉前農相の備蓄米放出を“反省”「備蓄の円滑な運営を図ってまいります」 [Hitzeschleier★]
- JA全農が「新おこめ券」…来年9月末の有効期限を新設、必要経費のみ上乗せ ★2 [蚤の市★]
- 1人3千円の食品高騰対策、何に使える? あいまいなまま衆院通過 [蚤の市★]
- 【悲報】維新の政治資金でガールズバー、高市首相「良いか悪いかは国民の皆さまが判断されること」 [115996789]
- 【悲報】タンパク質さん、寿命を縮めることが判明
- 【マギレコ】VIPでマギアレコード&マギアエクセドラ【まどドラ】
- 中国人、ガチ超正論。「日本人がアイヌに対してやったことを『問題ない』とするなら、中国が日本人に同じことをしても文句ないだろう?」 [314039747]
- 衛生的に気持ち悪くて性風俗店行ったこと無いんだ
- 【悲報】新米、全く売れなくて倉庫が満杯になってしまうwwwwwwwwwwwwwwwwwwww [802034645]
