C#, C♯, C#相談室 Part81 (271) TOP カテ一覧 スレ一覧 2ch元 削除依頼
Java Web Application Framework総合 ver2 (101)
データ構造,アルゴリズム,デザインパターン総合スレ 2 (109)
MSX-BASICの奥義を伝授するスレ (782)
【Lisp】プログラミング言語 Clojure #3【JVM】 (100)
簡単なプログラム言語って何? (142)
【C++】マイナーGUIツールキット (686)

C#, C♯, C#相談室 Part81


1 :2013/10/07 〜 最終レス :2013/10/27
前スレ
C#, C♯, C#相談室 Part80
http://toro.2ch.net/test/read.cgi/tech/1373037260/
Visual Studio 2010 Express
http://www.microsoft.com/japan/msdn/vstudio/express/default.aspx
Visual Studio 2012 Express
http://www.microsoft.com/visualstudio/jpn/products/visual-studio-express-products

2 :
ふらっとVisual C#,C♯,C#(初心者用) Part107
http://toro.2ch.net/test/read.cgi/tech/1380106942/
WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part16
http://toro.2ch.net/test/read.cgi/tech/1369912326/
【VB.NET】LINQ友の会【C#, C♯, C#】
http://toro.2ch.net/test/read.cgi/tech/1202568694/
C#,C#の宿題片付けます。
http://toro.2ch.net/test/read.cgi/tech/1197620454/
Microsoft Silverlight その9
http://toro.2ch.net/test/read.cgi/tech/1321150267/
Visual Studio 2010 Part20
http://toro.2ch.net/test/read.cgi/tech/1354608228/
Visual Studio 2012 Part7
http://toro.2ch.net/test/read.cgi/tech/1371524880/
こんなC#, C♯, C#ライブラリ無いですか?
http://toro.2ch.net/test/read.cgi/tech/1342672311/

3 :
参考リンク
MSDNライブラリ
http://msdn.microsoft.com/ja-jp/library/
@IT Insider.NET
http://www.atmarkit.co.jp/fdotnet/
Insider.NET 会議室 ディレクトリ
http://www.atmarkit.co.jp/fdotnet/index/bbs/
MSDN フォーラム
http://social.msdn.microsoft.com/Forums/ja-JP/categories/
pinvoke.net: the interop wiki!
http://pinvoke.net/
宇宙仮面の C# プログラミング / C# Programming
http://uchukamen.com/
WisdomSoft C#入門
http://wisdom.sakura.ne.jp/programming/cs/
WisdomSoft Microsoft .NET入門
http://wisdom.sakura.ne.jp/system/msnet/
どっとねっとふぁん
http://dotnetfan.org/
緑のバイク 初めてのC# 〜 覚え書き 〜
http://homepage3.nifty.com/midori_no_bike/CS/
どぼん!の .NET Tips (話題にすると荒れます)
http://dobon.net/vb/dotnet/

4 :
質問する前に"必ず"WikiやFAQ集を参照し、同じような質問がないか確認してください。
初歩的な質問はPC初心者板で・・・
http://pc11.2ch.net/pcqa/
参考リンク(よく出てくる情報リンク)
Windows Vista Wiki
http://windowsvista.ms/index.php
Windows VistaFAQ
http://vistafaq.stdo.net/index.html
〜インストールから設定・活用まで〜 すべてが分かるWindows Vista大百科
http://journal.mycom.co.jp/special/2007/windowsvista/menu.html
Windows 7 Wiki
http://www15.atwiki.jp/win7/
Windows 8 Wiki
http://www18.atwiki.jp/win8/
Windows8 移行まとめwiki
http://windows8.wiki.fc2.com/
コードの量が多い場合は下記サイトを使うなどしたほうがいいかも。
コードを貼り付けてRun codeのチェックを外し、submitボタンを押すと専用のアドレスが発行されます。
http://ideone.com/
http://pastebin.com/
直接貼る場合はhtmlエンコードした方がインデントも残って見やすいです。
http://kawama.jp/php/encode_html.php

5 :
htmlエンコードて

6 :
htmlデコードはしなくていいんですか

7 :
チョット質問です。foreach使うときに、パフォーマンス及び
可読性の両方の観点から良い方を教えてください。
Ex1)
List<string> testList = GetTestList();
foreach(var str in testList)
{
処理
}
Ex2)
foreach(var str in GetTestList())
{
処理
}
Ex2の方が可読性が上がると思うのですが、
パフォーマンスが下がるのか、、変わらないのか・・・
それとも変数に入れる作業がない分早いのか・・・
よろしくお願いします。

8 :
変わらん

9 :
正確にはGetTestList()実装依存
LINQの解説してるとこの片っ端から嫁

10 :
List<>で受けてるんだからそんな大層なもんじゃないっしょ

11 :
List<T>でそのまま受けられるってことはGetTestListの戻り値の型はList<T>だから
全く完全に等価だよ

12 :
上の書き方だと、testListをどっかで使うのかと思う
修正するときに上の方が気を使う
パフォーマンスは、理論上はメモリもCPUも変数1個分だけ上が悪い気がするが
まあ、誤差の範囲だろうけど

13 :
ildasmで調べてみると、testListの領域は取られてるが使ってないね。
最適化で同じになる。

14 :
testListのスコープが無駄に広すぎる
描き方はいただけない

15 :
スコープか、なるほど。
>>7じゃないけど、参考になる。
デバッグ用に一旦変数に入れてから使うやり方をしてたけど、
後々のことを考えるとこっちの方がいいのかな。

16 :
GetTestListの実装しだいだろうけど
他スレッドがGetTestList触ったときの挙動の違いとかもあるかな?

17 :
コーディングルール次第かなあ。
2の書き方が許されてるなら2でいいんじゃない?

18 :
引数paramがdataを持っているか否かの真偽値を返すメソッドの命名で悩んでます
bool ValidateParamHasData(Param param);
bool CheckParamHasData(Param param);
bool HasParamData(Param param);
validateもcheckもわかりづらいから使うなとよく言われてるけど
一番下のじゃちんぷんかんぷんだしどうすればいいでしょうか

19 :
大抵はデータを持ってる結果HogeするからCanHoge

20 :
bool IsValid(Param param);

21 :
ごめんなさい、「Hogeする」の部分が「ParamがDataの場合の処理をする」としか言い様がない場合はどうすればいいでしょうか

22 :
ちなみにDataにはData1, Data2, Data3の3種類があってそれぞれを判別するメソッドを分ける予定です
なので>>20のお答えもちょっと無理そうです
なんかややこしくて申し訳ないです

23 :
そのDataとやらはクラス名なのか値なのかはっきりしろ
具体的にはisなのかequalなのか

24 :
クラス名です
「ParamがDataを持っている場合」なので使うとしたらHasかContainsかなと
>>21では「ParamがDataの場合の処理をする」と書きましたが
「ParamがDataを持っている場合の処理をする」の誤りです

25 :
ならHasDataでいいだろもう

26 :
DataAvailable

27 :
>>18
っていうか、何そのstaticおじさんみたいな手続き指向脳。
何でParamの状態をParam以外の奴に尋ねるんだよw

28 :
全力で許した

29 :
初心者すぎて申し訳ないです
Paramの拡張メソッドにHasDataを追加すれば良かった話ですね・・・

30 :
なぜ拡張メソッド
普通にParamにプロパティ作れよ
そのプロパティの名前で悩むなら、どっかに名前どうするか相談するスレがなかったっけ

31 :
ParamはDLLで定義されてるんで直接いじれないんですよ・・・

32 :
staticってそんなに駄目なの?
MVVMでコードビハインド駄目って理屈と同じ気がする・・・

33 :
OOP教条主義者の妄言だから気にしなくていいよ
Paramを引数にする処理が複数存在した場合、全部プロパティで検証するのかって考えたらアホらしさが分かるはず

34 :
staticおじさんはグローバル変数ほしさにstatic乱用しちゃうような人のことだから、このケースで使うのは誤り

35 :
void Method( IEnumerable<Foo> e ){}
というメソッドがあって、別のIEnumerable<Bar>からSelectして渡したいと思いました。
Method( bars.Select( (b) => new Foo( b, ... ) );
でもFooのコンストラクタが例外を出す可能性があって、tryでくくりたいんです。
それで考えたのが
Method( bars.SelectMany<Bar, Foo>( (b) =>
{
 try
 {
  return new Foo[]{ new Foo( b, ... ) };
 }
 catch
 {
  reuturn Enumerable.Empty<Foor>();
 }
} );
ですが、ちょっと不細工だとおもうんですけど
空を返せるSelectってないもんですか
皆さんならどう書きますか

36 :
> 空を返せるSelectってないもんですか
拡張メソッド書けば?

37 :
C#が世にでて10年以上経ってるみたいだけど
商用アプリでは相変わらず使われていない
CADや高機能なペイント、ドロー系ツールでは
お金を頂くようなソフトを作ることは出来ないのでしょうか?

38 :
Visual Studioのようなホスティング型のはあるようだよ。
やっぱりGUIのパフォーマンスに難があって、
ハイブリッドになるようだね。

39 :
Catalystは.Netだったよ

40 :
>>37
君には無関係だよ

41 :
できません、って答えてほしそうね

42 :
無論できないよ

43 :
>>37君は次に、C#はソースが丸見えとか言い出すぞ

44 :
無論スケスケやねん

45 :
XBOXはXNAで出来るしVitaはmonoベースだしPS3/PS4もUnityで開発出来るようになったし
画像処理が苦手だったらゲーム機なんかに採用されないよね

46 :
>>43
っあ、そうなんですか?
それじゃ、シェアウェアの作者は使わないはずですね

47 :
今時シェアウェアとか存在してんの?

48 :
>>37
うちの開発は組み込みですらC#だお!

49 :
業務用なんかだと殆どが.netだけどライセンス周りだけNativeっての結構ある

50 :
昔はLOHの制限とかあったから極端にメモリを食う用途で.NETを使うのは厳しかった

51 :
そんな巨大なバッファを使い捨てにするのが間違ってるだろ
時々呼び出して使う処理だとしても、本体と同一のAppDomainで動かさなきゃいい話
LOH問題の有無にかかわらず、そんないかにも落ちそうな処理は隔離したいわ

52 :
>>34
違うよw
むしろもろ>>18みたいな設計をする人のこと

53 :
副作用おじさん

54 :
>>48
まあ最近組み込み Java 案件も珍しくないとはいえ、うちでは見たことないなぁ。
業務系の受託とか、自社製品の設定機能とか保守機能とかにはよく使ってるが。

55 :
>>54
on FPGA で何を記述しているのかとチラ見すると .cs でどうもhttp://en.wikipedia.org/wiki/.NET_Micro_Frameworkを使っているらしい本当か?
とても信じがたいけれども

56 :
.NET Miocro Frameworkはインターフェース誌2012年8月号でも
付録ARM基盤への対応記事が掲載されていたけど、
USBホストとかソケットとかを標準で持ってるし、
PCと基盤をUSBで繋いでVisualStudioからデバッグ出来るしで、
かなり便利そうだった。

57 :
今後は更新なしと聞いた気が。

58 :
.net compactより優遇されてる印象 >> Micro

59 :
>>58
Comoactはもう……。

60 :
SilverlightくらいのものをMFみたいにオープンソースで公開してくれればいいのにな
そしたらCFの分野もカバーできるしスマホもC#一色になるのに

61 :
プークスクスw

62 :
>>59
物流製造の業務用モバイルは世界中でWindowsCE/Mobileの独占状態なのにねえ……
結局P/Invokeだらけで「これって.netか?」みたいになってるわw

63 :
いやWindows Embedded 8も出てるでしょ
もともとOSとセットだからあんまりCFとは言わなくなったけど、
ちゃんとCFの最新版が入ってるよ

64 :
.NETはもう十分浸透したから、最近のMSは.NETを特別扱いするのをやめて
Windowsなら当然使えるものとして単なるAPIの一つと位置付けてる

65 :
>>55
これは俺も知らなかったわ。
こんどハード屋さんに聞いてみよ。

66 :
>>64
.NETはもう十分浸透した????????????

67 :
だからCompactもMicroもとっくにディスコンでしょ。
>>63
それはCompactじゃない。
Embeddedシリーズは基本的にPC用OSと同じだから当然.NETもフルの.NET。

68 :
>>67
http://msdn.microsoft.com/en-us/library/ee486593.aspx
新しいCFが付いてるのはWindows Embedded Compactだな

69 :
客先で恥かかなくてよかったね >>67

70 :
そこはかとなく70の匂い

71 :
確かに>>70は頭がおかしい

72 :
>>68
最新CFは3.9って微妙なバージョン番号なのね

73 :
引っ込み付かなくなったアホが暴れる流れ

74 :
>>68
一応まだ細々と続いてるのか。
実質的には死んでると思うけど。
>>69
こんなトリビアなネタが話題になるってどんな客先だよw

75 :
>>72
○まだCLR4系になってないから4は付けられない
○遅れてるイメージを持たせないためになるべく大きな数字にした
○次は4系に移行するよというメッセージも含めた
こんなところだろう

76 :
TPLとかDLRがCFに必要なのかねえ

77 :
いやCLR4ってVMの仕様が変わってる上にBCLにも大幅に手が入ってる
TPLとかDLRとかはライブラリがあればCLR2でも動くよ

78 :
>>75
次が3.91だったりするかもな

79 :
いい加減ビヘイビアの自動生成実装してほしい
BlendなしでもサクサクMVVM作れないとWPFの意味ないんだけど

80 :
ビヘイビアとMVVMってあまり関係がないと思うのですが

81 :
propaより複雑なスニペットを用意しろと?

82 :
>>78
るびー1.9の話ですか?

83 :
ルーピーか

84 :
Windows Formsってどうなっちゃったの?
結局WINDOWSのGUIは何で作るのが主流なの?

85 :
C#と言うかプログラミング自体初心者なんですが
1つ質問させてください
あるクラスを配列で利用してるとします
そのクラスのメソッド内で自身の配列のインデックスを求めることは可能ですか?
メソッドの引数としてインデックスと同じ物を渡せば利用できるのはわかりますが
あまりスマートではないと思ったので
そもそもこのような設計を考える方が間違いですかね?

86 :
>>85
例えばWPFには添付プロパティとかあるわけで一概に間違いと否定できないけど、
でもまあほとんどの場合は間違いだと思うけどね

87 :
>>85
クラスに「配列でしか使えない」という制限が無いのでそれを前提とした機能を実装するのは良くないかと。
複数の配列から参照される事もあるし素直にArray.IndexOfにすべし。

88 :
やっぱりインデックスの数値が必要な処理は利用する側で実装して
クラス内には内包しないようにした方が良いんですね
勉強になりましたありがとうございます

89 :
あららら・・・
何か勘違いさせちゃってるようだけどhw

90 :
ん?何か勘違いしてますか?俺

91 :
is演算子の使い道教えて

92 :
使い古された感はありますが、伝統的に
今現在でもまずはこれです。
This is a pen.

93 :
public overrides bool Equals(object obj)
{
return obj is T && Equals((T)obj);
}

94 :
>>92
荒井注乙

95 :
荒井注がとっさに出てくるって絶対50代だろw

96 :
小学生の頃英語わからないからマイケルジャクソンのBADを
this is a penだけで歌ってたなー

97 :
>>92
俺のときは this is a pencil. by 40代

98 :
両方だろ

99 :
XAMLでCommand記述したら自動的にVMにCommand追加してバインドしてくれるようになった?

100 :
それは本末転倒だろww
何のためにVMで抽象化してるのか考えろ
必要ないと思うなら普通にイベントハンドラ使え

101 :
unsafeコードで配列アクセスはポインタのインクリメント/デクリメントを極力使って
TPLでパラレル化をしたら
ともにTVTestでテレビ見ながら、
Q9550で1000x1000の逆行列で2.54秒ぐらい
10000x10000の逆行列で2822秒ってとこ。
これってPure Cだとどれぐらいで実行できまつか?

102 :
>TVTestでテレビ見ながら
とかわけ分からん条件ついてるし(´・ω・`)しらんがなとしか

103 :
TVTestとかPT3とか使ってるのは大概アニオタ
アニオタは自分理論で攻めてくるから注意な
こちらに大人の対応が求められる

104 :
>>103
アニオタじゃねーよ
俺はエロゲオタだ

105 :
みんな Build Insider とか行くの?

106 :
質問させてください。
やりたいことは、Windowsphone8で日本語(SJIS)のWebサイトを読み出したい。
Windowsphone8ではGetEncoding("Shift-JIS")が使えません。
www.atmarkit.co.jp/ait/articles/1301/17/news074.html
ここのサンプルを使おうとしましたが、byte配列で渡す必要があります。
WebclientのDownloadDataメソッドもWP8では使えず
Stringからbyte配列への変換も、GetEncoding("Shift-JIS")が
使えず行き詰まってしまいました。
なにか良い方法ないでしょうか?

107 :
>>106
さすがウンコフォン
http://code.msdn.microsoft.com/wpapps/Windows-Phone-8-Shift-JIS-7ecd59fe

108 :
C++なんて使えなかった頃はオープンソースのSJIS用Encodingを入れてたことを思えば

109 :
C++が使えなかった頃にそんなオープンソースのが手に入ったのかな

110 :
GetEncoding(932)じゃ駄目?
というかShift-JISじゃなくてShift_JISだぞ

111 :
>>110
全部使えません。

112 :
こういうところ手抜きだよな

113 :
WPFの放置っぷりも酷いからな、マジでModernといいWPFといいM$何がしたいのかわからない
VSだけはマメに更新しやがるのに、いい加減WPF数あるバグなおせよ

114 :
We bet on Mobileなんて言っちゃってるからなぁ
Mobileは鳴かず飛ばず、Desktopからも信頼を失うことにならないか

115 :
DataSet<T>というジェネリッククラスがあります。
このクラスから派生した DataSet<Member> が DataSet<T> をインスタンス化したものであることを確認するために
members.GetType() == typeof(DataSet<>)
とやったけどうまくいきません
本当はどう書くべき何でしょうか

116 :
WPFは、ActiveXめいて来た感じだね
方向性はこれで良いと思うが、直感的に使い方が分らないのが非常に良くない
総合的に考えて、結局旧来フォームベースで作ってしまう

117 :
>>115
意味が良くわからない、もう少し丁寧に何がしたいのか何が問題なのかを

#members.GetType().GetGenericTypeDefinition() == typeof(DataSet<>)
#という事なのか?な?

118 :
>>115
派生型で型引数の数が同じで同じ型名とかなんの嫌がらせだ。
class DerivedDataSet<T> : DataSet<T> { ... }
であるとして、
DerivedDataSet<Hoge>はDataSet<T>から派生したんじゃなくてDataSet<Hoge>から派生したもの。
これはDerivedDataSet<Hoge>のインスタンスをDataSet<int>にキャストできないことから明らか。
つまり、DerivedDataSet<Hoge>はDataSet<T>自体とは直接の関係がない。
ジェネリックなら素直に型制約じゃ駄目なの?

119 :
って、派生じゃなくて構築された型のことだったのか…?

120 :
C++と違って微妙に不便な型制約、もうちょっと注意深く作って欲しかったり・・・
最近ちょっと微妙な出来の悪さにイライラw

121 :
コンパイル時解決じゃない以上今ぐらいが限界だと思うが
enum, delegate辺りの型制約は欲しいけど

122 :
制約は、決め打ち制約ではなくて簡単なスクリプト書かせてくれればそれでいいんだけどね
C++だとコンパイルタイムメタプログラミングでどんな制約でもできてしまうけど、コードが直感的でない

123 :
>>117
これでした
ようはいくつかあるプロパティの中から DataSet<T> であるプロパティを全てリストアップしたいのです
これが意外と難しい

124 :
System.Reflection.PropertyInfo[] tmp = typeof(調べたい型).GetProperties().Where((item) => item.PropertyType.GetGenericTypeDefinition() == typeof(DataSet<>)).ToArray();
自分のやり方だと、こんな感じですかね

125 :
GetGenericTypeDefinitionはIsGenericTypeがfalseだと例外発生するって書いてあるぞ

126 :
Dictionary<string, List<string>> dic; // いくつかの要素が入ってるとする
var results = new List<string>();
foreach(var value in dic.Values)
 results.InsertRange(results.Count, value);
Dictionaryの値を一つのList<string>にまとめる処理なんですが
LINQとか使って一行で書けたりしませんか?

127 :
var results = dic.Values.SelectMany(x => x);
もしくは
var results = from x in dic.Values from y in x select y;
もしList<T>にしたければresult.ToList()すればよい

128 :
WPFの話の続きだけど、いまC#(.NET)で、Windows アプリケーションを作るとしたら、
WindowsForm と WPF のどちらがいいの?
仕事(納品する)とかではないので、ざっくりコメントをいただければとうれしいです。

129 :
ざっくりもなにもForms以外ありえない

130 :
扱える土方が多い技術を使え

131 :
手段の探索に時間をかけるなんて無駄

132 :
WPFは手続き型脳には無理

133 :
自分でどっちにするか決めれない脳な時点で無理

134 :
ふわっ とか
もこっ とか
しゅいん! みたいなのが欲しいときはWPF
それ以外は全部WinFormでいいよ

135 :
GDIですごく描画重いのWPFにしたら直る?

136 :
倍率ドン!更に倍!ってな感じに余計重くなる

137 :
独自に描画してて重いなら多分爆速になる
普通に使ってて重いなら多分余計重くなる

138 :
>>137
何言ってるのかさっぱりわからん

139 :
わからなくて普通

140 :
どう考えても独自に描画してるほうが爆速。

141 :
いやいや
WPFのシェーダ使ったエフェクトとかHWアクセラレーションなしじゃとんでもなく遅くなるよ

142 :
どうやって描画するかによるだろ。どんだけ馬鹿なんだよ

143 :
>>138
独自描画のコードがスパゲッティってことだろ

144 :
純正です
重たいユーザーコントロールをフォームにはっつけたらサイズ変更の時にすごく重いです

145 :
WPFに移行できるってことはそのユーザーコントロールもお前が作ってるんだな?
なら作りが悪いんだろ

146 :
描画の問題じゃない可能性も高い
データグリッドっぽい自作コントロールで、UIの仮想化を忘れてるとかな

147 :
WPFなんて論外。

148 :
そうだ 時代はストアアプリ

149 :
xboxのストアは成功したと言えるがWindows8は成功しないだろうな。

150 :
ストアが成功するためには決済が紐ついてないとだめだよな
普通のPCはまずそれがない
デスクトップの先がないからってジタバタし過ぎて死期を早めたんじゃないか

151 :
List<T>.Contains()が遅くて困ってる。
集合Aに対してxが存在するかどうか判断する最速の方法教えて。

152 :
集合Aが集合という以上の情報を持っていないなら線形探索する以外どうにもならん
Dictionary<TKey,TValue>併用とかでどうにかするとか
リストじゃなくてツリーで良いならSortedDictionary<TKey, TValue>使うとか

153 :
あとTが構造体でEqualsオーバーライドしてないとか

154 :
ありがとうございます。試してみます。

155 :
あとは設計の問題だったりすることも……
例えば描画のタイミングで毎回リストを探索しちゃってるとか

156 :
>>153はIEquatable<T>実装の方がいいね

157 :
Javaだと、
List: インターフェース、
ArrayList : List の実装クラスの一つ、
List のスーパーインターフェースとして Iterator があるけど、
C# だと、以下が対応するような感じという理解であってますか?
ArrayList → C# での List (具象クラス)
List → IList (インターフェース)
Iterator → IEnumerable (インターフェース)
C# の場合、IEnumerable は Linq で使える extention method とかも定義されているので、
Java の Iterator とは若干違いますが・・・

158 :
まあ大体合ってる
拡張メソッドは基本的に記法だけの問題だからIEnumerable自体の機能ではない

159 :
>>158
ありがとうございます。

160 :
object型でもらった引数を元のT型(いくつかの定義されている中の1つ)に戻すにはどうすればいいですか

161 :
キャストする以外に何かあるのか?

162 :
補足です。
GetType()によるTypeはわかっています。objectをこのType型に昇格?させたいのですが、どうすればいいですか

163 :
キャストって書いてあるのになんで無視するかな

164 :
って同時だっただけか

165 :
object obj = 何か
Type type = obj.GetType();
list.Add ((*1)obj);
(*1)ここに入れる式を教えて下さい。ここはobject型ではなく元の型が必要です

166 :
いくつか用意されているなら、かたっばしからasでキャストかな

167 :
list.Add ((*2)(*1)obj);
もう少し正確に書くとライブラリによって定義された(*2)の型変換が発動するために、
(*1)は元の型にもどさなければいけません。
型は(自分以外の人間が作るので)実行時にしかわかりません。
だから動的にGetType()の結果と同じ型に昇格させるにはどうすればいいですか

168 :
>>165
listでコレクションの型が確定してる、またはobjectなわけで、元の型っているの?

169 :
listは何なんだよということだわな

170 :
>>167
Addにオーバーロードがあるのかな?
ケース分けしてケース毎にキャスト
if (t = typeof(TypeA)) list.Add ((TypeA)obj);
else if (t == typeof(TypeB)) list.Add ((TypeB)obj);
else if (t == typeof(TypeC)) list.Add ((TypeC)obj);

171 :
>>157
>List → IList (インターフェース)
いえ違います

172 :
左辺がJAVAなんだろ

173 :
dynamic型にキャストしたら実行時に適切な型に解決してくれました。
list.Add ((*2)(*1)obj);
      ↓
list.Add ((dynamic)obj);
ありがとうございました。

174 :
listはTとか型引数ないのか
void Hage<T>( object obj )
{
 ...
 list.Add( (T)obj );
}
みたいなかんじでよぉ

175 :
オーバーロードがあるから無理
オーバーロードはコンパイル時に解決する必要があるけど
ジェネリックの特殊化が起きるのは実行時だからな

176 :
?

177 :
dynamicにもインテリセンスあっていいのに
object型の予測変換ぐらい入れとけよ

178 :
いやdynamicだと派生クラスでGetTypeとかオーバーロードされてたらそっちが呼ばれる
間違った候補を表示する可能性があるからダメ

179 :
>>175
じゃあジェネリックの型パラメータ制約は実行時にチェックされるのか?

180 :
C#のGenericはJIT時だな

181 :
>>179
そうだよ
ジェネリックは一切言語に依存しない

182 :
制約は当然C#コンパイラがチェックするけどそれはただのMSの親切で
コンパイル後にも制約の情報は残ってて最終的にJITがチェックする

183 :
VSの99%は愛でできてるからな。

184 :
J言語とはちゃうねん

185 :
J++っていつの間にかC#になってたんだな

186 :
J++はヘルスバーグがMSに来て最初の仕事だった
J++にはdelegateがあるんだよね

187 :
PGになったのが30過ぎてからだから毎日すごいプレッシャーだわ・・・
でも好きな仕事だから楽しいんだけどね、おまえらももっと楽しめよ

188 :
dynamic型はある意味便利だけどリファクタツールが使えなくなってメチャメチャ不便になるというもろ刃の剣
独立した構文中でのみ有効で良かったような気がする、ぶちまけてしまっては残念言語になってしまう
という訳でみんなdynamicの使用は控えようよ><

189 :
dynamicが必要な状況ってそうそうないだろ

190 :
静的型付き言語のメリットがなくなっちゃうよね
事実VS使ってるのにXAML書くのがJS書くのと変わらないくらいしんどいし

191 :
>>186
ヘルスバーグの筋のよさにはどうしても惹かれてしまう

192 :
ヘルスバーグなんて有益なアプリケーションは何一つかいてないじゃんw
言語の仕様を決めてるだけw

193 :
優れた性能のテレビを作った人に
「お前 世に名を残す番組一つも出してないな」
と言ってるようなもの

194 :
でもテレビ作ったやつなんて誰も興味ないし覚えてない
良い番組は記憶に残るし監督の名前も広まる

195 :
194は論理的思考のできないバカ
例えて言うならプログラミング言語の優劣の議論でいきなり
一般利用者にはソフトの名前しか記憶に残らない
と言い出すひ等しい

196 :
既にヘジたんの名前は十分に売れていると思うのは俺の気のせい?

197 :
売れてない
WindowsでC#やって2ちゃんねるに入り浸っている人以外

198 :
実質C#やvb.netで作成された優秀なアプリケーションはないしな
ガベコレうぜーし

199 :
>>197
つturbo pascal
つdelphi

200 :
屁痔がデルファイに携わったとしても
デルファイはC#と違って
信者の多くは屁痔を知らないだろう

201 :
ゲーム専用ですし
主舞台とはいいつつも有名なパッケージ製品がないのは何故でしょう
一つ二つあってもいいですよね
Javaにはありますよ

202 :
任天堂の倒し方w

203 :
>>200
ヘジタンに俺の心が届けば‥‥

204 :
>>201
C#の主舞台がゲーム?
ゲームではC+++DirectXの一人勝ちだろ

205 :
>>204
Unityでも触ってろ

206 :
>>204
情弱乙

207 :
>>204
情報が古いよオッサンw
業界から消えた方が世のため人のためじゃね

208 :
>>201
C#の主舞台は中小企業なのでパッケージ製品をカスタムするよりスクラッチした方がいいのです

209 :
マ板でやれ

210 :
C#は、Delphiの後継と言ってよいの?
あと TypeScript ってMSが作ったと聞いていますが、これもヘルスバーグ氏が作ったの?

211 :
どっからDelphiが来たんだよ。ggrks

212 :
Turbo PascalやDelphiつくったヘルスバーグ氏がC#も作ったって事で、
別にC#はDelphiの後継というわけではないって事か。

213 :
>>212
漢字はよく似ているけれどもね、まあJavaとも似ているが

214 :
C#で作られたゲームを挙げてみろよw

215 :
Unityで作られたゲームの最低でも1/10以上はC#だろ

216 :
>>210
Delphiのメソッドポインタや手続きポインタがdelegateの原型

217 :
WP7.5用ストアでも覗けばいいんじゃね?

218 :
稀によく>>214みたいな奴いるがほとんどの場合単なる無能だよな

219 :
ゲームじゃないけど、誰でも知ってる一部上場企業のパッケージをいくつか C# でやったことはあるな。

220 :
C#を使う理由がわからん

221 :
馬鹿乙

222 :
>>220
楽だから

223 :
Brainfuckとc#どれが一番楽ですか?

224 :
自分で考えろ無能

225 :
>>223
いちいち聞くようなやつは、全部諦めるのが一番楽

226 :
給料日後の週末だから大きい子供がいっぱい

227 :
中小零細は25日払いじゃないところも多いんだけどね

228 :
大きいとは大きい会社のということですか

229 :
>>228
身体ばっかり大きくて脳みそがないってことだろ。
つまりおまえのことだwww

230 :
>>210
なんだったか、delphiのライブラリの独特な仕様の一部が
そのまま.NET Frameworkにも入っている、ってのがあった気がする
何の機能の部分だったかさっぱり思い出せないんだけど

231 :
今見たらtypescriptってC#みたいになってるな

232 :
>>210
TypeScriptはヘルスバーグだよ

233 :
ヘジたん love!

234 :
ObserverパターンをRx使わなくてもいいように、もっと簡単にしてほしい

235 :
いやObserverパターンってC#のイベントそのものだぞ
Observerパターンを言語に取り込んだのがイベントだ
Rxは(GoFでいう)Observerパターンとは全く異なるもの

236 :
仮面ライダー?

237 :
ObserverパターンでいうところのObserverをDSL使ってプル型っぽく書けるようにしたのがRxだけど
あれをObserverパターンだと言うとGoF信者が発狂する

238 :
EventArgs e = await button.Click;
ができればRxは完全に用済みなわけだけど、できないんだっけ?
自分で作るのは簡単にできそうだな

239 :
>>235
え?そうなの?
GoFのデザパタのひとつだとは知ってたんだけど、C#のイベントがObserverで実装されてたんだ・・・
なんかみんな詳しいね、俺の現場にもみんなのような師匠が居ればレベルアップできるんだけどな・・・

240 :
MVPの弟子になればいいじゃん
たぶん糞面白くもないWPFのレクチャーされるだろうが

241 :
技術はみんな持ってる
待遇に見合わないから出し惜しみしたり、競争の優位性保つために隠したり
そんなもんだよ
こいつら技術ねえなあって思っても何だかんだ仕事は進むだろ?
技術ガチなかったら進まないから

242 :
>>239
俺も学生の頃にネットの凄い人たちを見ていて、
会社でプロでやっている人たちはこんなに凄いんだ、付いて行けるかなと心配してたんだが、、、
入った会社のソースを見て、余りのレベルの低さに衝撃&目眩。。。
でも、転職先で偶然MVPな人と一緒に仕事をする事になって、かなり勉強させて貰った。

243 :
だから技術はあるんだよ
でも教えたくなる後輩とそうでない後輩はいる

244 :
いや、高い技術を見せてないだけだったら分かるんだが、
凄まじいネストの嵐、何千行にもなる関数、どこに飛んでるののgoto文、
switch,caseラベルに直値で10進と16進の混在とか、
せめて入門書レベルでいいから普通に書こうよ。

245 :
そしてテストしてないんですよねwww

246 :
やっぱ年上って教え辛いんですかね?
業界入ったの遅いから年齢だけはどうしようもないんですよね
好きな仕事なんでやる気はありまくりなんだけど

247 :
>>244
嫌がらせだろ
かなり嫌われてるんだな、

248 :
>>247
いや俺が入る前から有る主力製品のソースを読む機会が有って見てみたんだ。

249 :
技術不足でまともに進まないからデスマとかIT土方って言葉があるんだと思うぞ

250 :
普段使えない同僚が社外で個人作のフリーソフトの出来が良くて不思議だった

251 :
レベル高い人って共通して書くスピードが半端じゃなくて仕事が速いってみんな言いますね
そんな人見た事ないですけど・・・

252 :
>>251
うちに1人すごい人がいるけど、突出しているのはその人くらいですね
100人に1人もいないんじゃないでしょうかね
スピードと言うより、無駄や手戻りがなく思考時間が短くて効率がいいんでしょうね
バグも少ないですよ

253 :
ある程度詳しい設計書が出来てる現場にヘルプで入るとノータイムでコードだけ打ってる感じになる

254 :
出来る新人がいるけど出世されたらむかつくからエクセルばっかり書かせてる

255 :
>>218
>稀によく
「稀」なのか「よく」なのかはっきりせい!

256 :
>>255
おまえは一生ROMってろ

257 :
バースト誤りみたいなもんだろ

258 :
新参乙

259 :
>>249
それは仕様策定側、要件定義側の問題では?

260 :
>>255
統計学的に偏りがひどいということだろう。
職場、外ではそんなアホなことを言う奴はまずないのに、2chだと普通にいるとか。

261 :
統計学的()
さすが70。いうことが違う

262 :
マ板でやれってんだろキチガイども

263 :
放置しとけよ
おたくもキチガイに言葉が通じると思ってるのかい

264 :
外では稀にしかニートを見かけないのになぜかこのスレにはよくいるとか。

265 :
画像を100個ほど読み込むにあたって,
image[0]=Properties.Resources.image0;
image[1]=Properties.Resources.image1;
image[2]=Properties.Resources.image2;
というふうにして読み込んでいます.
これを,
for(i=0;i<100;i++){
image[i]=Properties.Resources.image+i.ToStrung();
}
という感じにしたいのですが,これではうまく動きませんでした.
どうか助けてください.

266 :
Resources.Designer.csのコードを開いてみな

267 :
>>266
今日の半日分と次の1週間分のモヤモヤが解決しました!

268 :
>>267
じゃあ次は漏れのムラムラをかいsy・・・
おっと仕事しすぎた。もう寝るお。

269 :
>>268
おかずうp
あごめん、俺も寝るわ

270 :
とんでもないところで質問してしまったのか・・・
ともあれ,ありがとうございました。。

271 :2013/10/27
キモイんだよ馬鹿親父どもが
TOP カテ一覧 スレ一覧 2ch元 削除依頼
【関数】Erlang Part 2【エリクソン】 (209)
【漏れは】猫でもわかる質問スレ【猫以下です】 (496)
ふらっとVisual C#,C♯,C#(初心者用) Part107 (667)
【上流社会】MSDNサブスクリプション総合【最先端】 (652)
画像処理 その14 (120)
リーダブルコーディング技術スレ (187)
--log9.info------------------
プロ野球の視聴率を語る5045 (954)
なぜJリーグは成功し、プロ野球は失敗したのか?2 (103)
【タイカッブ】史上最高の安打製造機は誰?2【張本】 (538)
ドラフトで“隠し玉”や“異色”と呼ばれた選手 (271)
元広島のマイナーな選手を懐かしむpart2 (912)
平成以降の日本球界名投手100傑を決めよう (482)
「流し打ち」といえば誰? (157)
メジャーの殿堂入り選手 15 (127)
★  【秋山】 秋山幸二 Part 2 【幸二】  ★ (781)
移転した球団 (134)
微妙な成績のレギュラー選手 (143)
名監督頂上決戦】原辰徳×星野仙一【最優秀男子選定 (944)
【豊富な練習】 正田耕三 【2年連続首位打者】 (136)
青空の下で行われていた頃の日本シリーズ (430)
KKコンビの進路が予定通りだったら (103)
昭和30年代前半生は誰も2千本安打を打ってない! (437)
--log55.com------------------
よよよのよっさん
セクハラ豆腐の日記帳 Part.3
【速報】イタリア、また加速 感染者 +5249 死者 +743 [738268566]
【速報】東京オリンピック 来年春開催を提案 春なのに夏五輪ですか [876811395]
【感染者】+71 (過去最高を更新) [496411993]
K1主催者「コロナ対策として新鮮な次亜塩素酸水をミストにしてまきました」 [715699708]
【世論調査】「次の首相にふさわしい政治家アンケート」で再び安倍晋三がトップに 昨年9月以来 安倍4選か? 日本終了  [947522962]
【悲報】埼玉県知事がブチギレてたK-1イベント 観戦者が発熱、PCR検査へ回されるwywywywywyw [532953569]