[表示 : 全て 最新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くらい

175 名前:デフォルトの名無しさん mailto:sage [2009/07/10(金) 17:48:38 ]
1.1はもはやC#の方言だからやめた方がいい。

176 名前:デフォルトの名無しさん mailto:sage [2009/07/10(金) 18:37:37 ]
MSDN見て自分で補正できないレベルだったら、2.0以降用を探すようにすすめる。

177 名前:デフォルトの名無しさん mailto:sage [2009/07/10(金) 19:34:02 ]
>>176
>>175
ありがとうございます。2.0対応だったら買うことにします。


178 名前:デフォルトの名無しさん [2009/07/10(金) 21:42:28 ]
イベントに関して質問です。
イベント += Onイベント
イベント -= Onイベント
のように+=および-=演算子でイベントを登録/解除できると思いますが、
イベントにOnイベントが既に登録されているかどうか判断することは出来ないのでしょうか?


179 名前:デフォルトの名無しさん mailto:sage [2009/07/10(金) 21:50:35 ]
うん

180 名前:デフォルトの名無しさん [2009/07/10(金) 21:57:56 ]
ですよね。
残念。

181 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 01:03:27 ]
自分で定義したイベントなら取れる。

182 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 01:11:34 ]
>>178
通常は判別できる必要性など無いと思うが
逆に必要と思った理由を教えて欲しい
ただし、「多重登録の回避」という回答は却下

183 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 01:14:00 ]
自分で定義したイベントでなくても取れそうだ。
Reflction なコード書くのが面倒だから、サンプルは作らんけど。

Component の Events、EventHandlerList、Delegate.GetInvocationList() あたりを
調べてみて。



184 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 01:35:17 ]
それはそれに結びついている保証もないというか
ロジック確認してみたいなハックに等しいから
分離を破壊する(実装変わったら終了って話)ので
さすがに薦めるのどうよ
アクセサが add/remove しかないんで無理でもう
いいじゃん

185 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 10:24:34 ]
クラスAがイベントHogedを持っていて、クラスBのなかでクラスAのインスタンスaを作り自分のメソッドHogeをHogedに登録するとする。
あるタイミングでaは破棄されるんだけど、そのときHogeはHogedからRemoveする必要ないよね?


186 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 11:02:04 ]
うむ

187 名前:デフォルトの名無しさん [2009/07/11(土) 11:05:58 ]
COBOLは、データラベルについてREDIFINEで再定義を行うことができますが、
C#でも同様に、
 01 DATE
  05 YY
  05 MM
  05 DD
みたいな再定義はできますか?
よろしくお願いします。

188 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 11:19:50 ]
union かなあ

189 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 11:21:45 ]
ってここC#か、MarshalAs属性とか?

190 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 12:49:04 ]
>>184
保証はあるだろ。

できる/できない の話として「できる」ってだけで、
薦める/薦めないの話じゃない。

191 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 12:58:02 ]
ないよ
イベントはデリゲート型ではあるけど実装としてデリゲートを使う必要はない

192 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 13:05:49 ]
+=、-= でデリゲートを使わない、具体的な例を頼む。

193 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 14:14:03 ]
int a = 1, b = 2;
a += b;
a -= b;



194 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 14:26:49 ]
>>190
いや、完全に実装依存。
あるイベントについて現時点で動作するロジックなら書ける。
でも、全てのイベントについて今後永久に動作するロジックは無理。


195 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 14:29:51 ]
>>191
イベントはデリゲート型ではあるけど

これは違うような。。

196 名前:デフォルトの名無しさん [2009/07/11(土) 15:13:43 ]
C#のテキストボックスで、
・高さ指定&文字列の縦配置を中央にする。
・高さ指定&padingを設定する。
以上のいずれかは可能でしょうか。
老人向けの大きな見栄えの良いボックスを作りたいのですが…。

197 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 16:15:45 ]
>>185-186
の件だけど、これってデリゲートが弱参照だってことだよね。
ヘルプで見つからないフシアナな俺に、どこに書いてあるか教えて。

198 名前:197 mailto:sage [2009/07/11(土) 16:16:58 ]
あ、ごめん。aを破棄した時か。
じゃあ問題ないな。

199 名前:デフォルトの名無しさん [2009/07/11(土) 16:33:39 ]
Win32APIのスレで聴いたのですがスレ違いとのことでした。.NETの
クラスで解決できるでしょうか?

現在、.NETアプリケーションでWebBrowserコントロールにおいて
フォルダのExplorer表示を出しています。そうすると必ずあの青色の
「タスクメニュー」が現れてきます。

通常のエクスプロ−ラだとそれをフォルダツリーに置き換えたり、
検索ツールに置き換えたりできました。

自分のアプリケーション上で、あのタスクメニューを消してしまうことは
できるでしょうか?できるようであればその方法を教えてほしく。

ちなみに、エクスプローラのオプションで「全般」タブ→「作業」のところ
で、「従来のWindowsフォルダを使う」を選ぶとタスクメニューはでなくは
なるのですが、そうすると、Xpでは「写真」表示ビューが使えなくなって
しまうので、「フォルダに共通の作業を表示する」の方で使いたいので
した。このオプションの状態で、プログラムから「タスクメニュー」を消す
方法がありましたら教えてください。

よろしくお願いします!

200 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 20:20:40 ]
>>187
自分ならプロパティで実装するかな?
.NETクラスライブラリのSystem.DateTimeにも
Year, Month, Dayプロパティがあるから、プロパティによる実装がC#流のはず

201 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 21:06:20 ]
>>196
Multiline=trueにすれば高さ指定はできるけど、
老人向けならフォントをでかくすればいいだけじゃないの?

202 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 21:58:13 ]
>>200追記
REDEFINES句の例としてはSystem.DateTimeは不適切だったかも

01 DATE-STRING PIC X(6).
01 DATE REDEFINES DATE-STRING.
05 YY PIC 9(2).
05 MM PIC 9(2).
05 DD PIC 9(2).

のようなことをやりたい?
これもプロパティによる実装が良いと思う。

203 名前:デフォルトの名無しさん [2009/07/11(土) 23:37:33 ]
>>202
ありがとうございます。
プロパティをオリジナルで定義するということでしょうか。



204 名前:デフォルトの名無しさん [2009/07/11(土) 23:42:26 ]
>>201
ありがとうございます。
操作性と見栄えを重視したシステムにしなければならないんので、
テキストボックス内の上下の余白をゆったり目にとって、
かつ中央揃えにしたいんです。
これはc#では不可能なのでしょうか…。

205 名前:デフォルトの名無しさん mailto:sage [2009/07/11(土) 23:48:30 ]
>>204
TextBox を使わないで独自コントロールを使うとか
Panel 上に透明な TextBox を乗せてごまかすとか。

206 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 00:16:23 ]
system.windows.controls.control.padding

207 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 00:27:58 ]
>>204
少なくとも、C#そのものは関係ない。
(というか、C#のテキストボックスなんてないだろ)
どういうGUIコンポーネントを使うかは関係がある。

208 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 00:35:48 ]
WPFを使えばどうも簡単にできるみたいだけどね・・・。開発環境がまだ完成しきってないし、Vista以降ターゲットになっちゃうけど

209 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 00:41:51 ]
>>208
普通にXPで動くけど?

210 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 01:14:44 ]
>>209
そうなんだ!勘違いしていたよ!

211 名前:デフォルトの名無しさん [2009/07/12(日) 01:25:20 ]
>>206
そんな名前空間、あったっけ…?
探しても見つからない(-_-;)。

212 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 01:27:42 ]
すいません。
VisualC#2008で、フォームアプリケーションを作っているんですけど
フォームの多重表示を禁止したいのですが、検索してみつけたソースどおりにしても
まだ多重表示をされます。なにかソースがおかしいのでしょうか?

表示するフォーム=about.cs

about about = null;
if ((about == null) || about.IsDisposed)
{
about = new about();
about.Show();

}
参考ページ:ttp://homepage3.nifty.com/midori_no_bike/CS/form.html

213 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 01:29:00 ]
ローカル変数においといちゃダメだろ



214 名前:デフォルトの名無しさん [2009/07/12(日) 01:44:44 ]
>>206
C#でその名前空間を使うにはどうすればいいの?

215 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 02:21:36 ]
>>211>>214
WPFの一部だから基本的にWPFプロジェクトで使う。
msdn.microsoft.com/ja-jp/library/system.windows.controls.control.padding.aspx

216 名前:デフォルトの名無しさん [2009/07/12(日) 03:06:00 ]
C♯では、テキストボックスのパディングや縦位置の中央揃えが存在ないということ?
そんな…まさか…。

217 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 03:25:54 ]
>>216
C#に押し付けるとは・・・まだまだ青いな

218 名前:デフォルトの名無しさん [2009/07/12(日) 06:56:46 ]
>>217
もしかしてこれからはWPFの時代ですかね…?
C♯でできる裏技があればゆいのですが(*_*)

219 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 07:29:19 ]
>>216
あるからググレ

220 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 08:01:33 ]
WPFの柔軟性は異常。
Formsは今後のバージョンアップ
は見込めないらしいね。

221 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 08:50:00 ]
ググるまでもなく>>215のリンク先に答えが書いてあるし
>>216とか>>218は言語フィルタでC#外しているのか

222 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 11:51:05 ]
          ____   
       / \  /\ キリッ
.     / (ー)  (ー)\      
    /   ⌒(__人__)⌒ \    
    |      |r┬-|    |      今後永久に動作するロジックは無理
     \     `ー'´   /      
    ノ            \
  /´               ヽ              
 |    l              \
 ヽ    -一''''''"~~``'ー--、   -一'''''''ー-、.    
  ヽ ____(⌒)(⌒)⌒) )  (⌒_(⌒)⌒)⌒))


          ____
        /_ノ  ヽ、_\
 ミ ミ ミ  o゚((●)) ((●))゚o      ミ ミ ミ
/⌒)⌒)⌒. ::::::⌒(__人__)⌒:::\   /⌒)⌒)⌒)
| / / /     |r┬-|    | (⌒)/ / / //  だっておwwwwwwwwwwwwwwwwwww
| :::::::::::(⌒)    | |  |   /  ゝ  :::::::::::/    当たり前だろwwwwwwwwwwwwwww
|     ノ     | |  |   \  /  )  /
ヽ    /     `ー'´      ヽ /    /     バ
 |    |   l||l 从人 l||l      l||l 从人 l||l  バ   ン
 ヽ    -一''''''"~~``'ー--、   -一'''''''ー-、    ン
  ヽ ____(⌒)(⌒)⌒) )  (⌒_(⌒)⌒)⌒))


223 名前:デフォルトの名無しさん [2009/07/12(日) 12:47:15 ]
>>215
俺も読んでみたけど、分からないんですが…。
テキストボックスのプロパティで縦の位置を中央揃えに指定できないし、
windows.control名前空間もC#だと見当たらない。
>>216
ぐぐっても出てこないよー…。



224 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 13:02:34 ]
>>223
ttp://hanatyan.sakura.ne.jp/vbhlp/textali.htm
vbだけど

225 名前:デフォルトの名無しさん [2009/07/12(日) 13:48:29 ]
system.windows.controls.control.padding
ってアドインみたいなものっすか?
3.5入れてるけど出てこないんです。

226 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 13:54:21 ]
>>225
msdn.microsoft.com/ja-jp/library/system.windows.controls.control.padding.aspx

227 名前:226 mailto:sage [2009/07/12(日) 14:09:55 ]
>>225
暇だからきちんと説明するか。
新規のwindowsアプリケーションを作成する。
追加->新しい項目->ユーザーコントロール(WPF)
UserControl1.xamlの<Grid></Grid>要素の間に>>226の<Button>〜</Buttion>を入れる。
デザイナにPaddingと表示されたButtonができる。
これをダブルクリックすればvoid ChangePadding(object sender,RoutedEventArgs e)がソースに自動追記される。
>>226にあるコードを実装する。
そしてwindowアプリケーションの方に戻り、Form1のデザイナの上にツールボックスからUserControl1を貼り付ける。

以上

228 名前:デフォルトの名無しさん [2009/07/12(日) 14:42:14 ]
>>227
ありがとうございます。
すみませんが、
テキストボックスの高さをゆったりともたせ、
paddingを使って文字を縦中央に配置したい場合、
このコントロールでどう設定すればよいのでしょうか。
どうか、見捨てないでください。

229 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 15:03:52 ]
C#は関係ないし、WPFスレに行けば?
その前に、msdn.microsoft.com/ja-jp/library/aa970268.aspx
ここと、関連する情報は読んで理解しておいてね。

230 名前:デフォルトの名無しさん [2009/07/12(日) 15:26:29 ]
>>229
C♯は関係ないの?
今までの話とちがうよ。

231 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 15:29:02 ]
そもそもFormsもC#と関係ないがな(´・ω・`)


232 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 15:33:41 ]
>>230
System.Windows.FormsもC#と関係ない。
C#という言語を使って、System.Windows.Formsというアセンブリを使う
だけ。C#から使おうがVisual Basicから使おうがIronPythonから
使おうが、使い方に違いはない。

言語(C#)とフレームワーク(.NET)とその中のライブラリ(System.Windows.Formsアセンブリ)の
区別が全くつきませんか?

233 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 15:41:14 ]
232を書いた後、あれ、アセンブリは不適切?名前空間と言うべきだった?
でもこの文脈で区別するとますますとっつきにくくなるよな。

と思ったが、System.Windows.Forms.dllだった。よかった。



234 名前:デフォルトの名無しさん [2009/07/12(日) 15:50:18 ]
>>229


235 名前:デフォルトの名無しさん [2009/07/12(日) 15:52:06 ]
>>229
結局、テキストボックスの縦中央に配置するにはどうしたらよいの?

236 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 15:59:01 ]
プロパティで項目一通り探してみればいいダロ
VerticalContentAlignmentとかそのものな項目が見えるけど

237 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 16:30:51 ]
>>235
>>229のリンク先は読んだの?読んだら、どこが分からなかったの?

238 名前:デフォルトの名無しさん [2009/07/12(日) 16:45:01 ]
言語非依存WinFormsスレなんかあってもまず機能しないだろうな
WPFは現状VBerがほとんどいないからこそ専用スレが成り立つ

239 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 16:50:33 ]
>>238
実際、以前.NETスレがあったが、過疎だった。
みんなC#とかVB.NETのスレへ流れるもんだから。

240 名前:デフォルトの名無しさん [2009/07/12(日) 17:01:34 ]
WPFにはXAMLという共通言語があるし
言語とライブラリを混同するようなレベルの初心者ユーザも少ないからな

241 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 17:17:18 ]
>>212
aboutっていわゆるバージョン情報のフォーム?
だとすると、面倒なことをせずにShow()ではなくShowDialog()で一つ表示する方法が普通だと思うけど

242 名前:デフォルトの名無しさん [2009/07/12(日) 17:29:10 ]
>>237
あの…恥ずかしながら、
ユーザーコントロールを追加しましたが、
テキストボックスのパディングをどこで設定するのか…
またはテキストボックスの垂直の位置をどこで中央にするのか…
(水平の中央はありますが)
が分からないんです。

243 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 17:29:31 ]
>>239
俺もそのスレ見てたわ。
次スレどうしようか悩んだけど、過疎ってたのでやめといたら結局誰も立てなかった・・。



244 名前:デフォルトの名無しさん [2009/07/12(日) 17:33:08 ]
Gridの中にテキストボックスを入れるんだよ

245 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 17:34:11 ]
テキストボックスじゃなくていいならラベルで出来る

246 名前:デフォルトの名無しさん [2009/07/12(日) 17:37:31 ]
関係ないけど、WPFではLabelは特殊なコントロールで、普通の文字描画には使わないんだよ
TextBlockというのを使う

247 名前:デフォルトの名無しさん [2009/07/12(日) 17:41:23 ]
グリッドってなんだろ…
(T_T)?

ところで、テキストボックスのパディング設定は果たしてできるのかな。

248 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 17:46:47 ]
Paddingの追加って、こんな感じに入力するだけでしょ。
<TextBlock …… Padding="10">……</TextBlock>

249 名前:デフォルトの名無しさん [2009/07/12(日) 17:49:58 ]
Paddingプロパティがあるだろ?
パディングはそのコントロールの親(GridやBorderなど)を基準にして行われる
WPFはとにかくコンテナ(WinFormsでいうPanelみたいなもの)をネストしまくるんだ

250 名前:デフォルトの名無しさん [2009/07/12(日) 18:19:59 ]
>>249
それは、Windowsアプリケーションでも可能なの?

251 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 18:22:24 ]
>>217

252 名前:デフォルトの名無しさん mailto:sage [2009/07/12(日) 18:24:16 ]
何この馬鹿は。
やってから言えよカス。

253 名前:デフォルトの名無しさん [2009/07/12(日) 18:26:27 ]
Windowsアプリケーションには
textblockとかgridってあるのかな。



254 名前:デフォルトの名無しさん [2009/07/12(日) 18:30:15 ]
WinFormsなら無い
ユーザーコントロールに枠線消したTextBoxを張る
みたいな汚い方法しかない

255 名前:デフォルトの名無しさん [2009/07/12(日) 19:02:18 ]
ビジュアル重視ならば、
WPFで作った方がよかったんじゃないかな。
俺もよく知らないけど。

256 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 00:13:27 ]
見た目こそWPFの領分だね

257 名前:デフォルトの名無しさん [2009/07/13(月) 00:55:49 ]
しまったな…
俺もWPFで作れば良かった。
できることはWindowsアプリケーションと変わらないし。

258 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 01:37:11 ]
何だか勘違いしてるようだけど、WPFで作ってもWindowsアプリケーションだよ。
場合によってはMFCとか.NETじゃないやつまで含んじゃう言葉だから、誤解を避けるためにWinFormsって書く方がいい。

WinFormsで見た目をちょっと改善しようと思ったら、自前で描画するとか泥臭い手段しか無かったというのはよくある話。
WPFでは馬鹿みたいに(褒め言葉)柔軟で何でも出来るけど、設計思想がWinFormsやMFCとは別物の新しいやつだから、最初は戸惑うと思う。

259 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 07:29:50 ]
そして起動が遅いと言われるわけですな

260 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 09:54:35 ]
Formでやるなら>>224でいいじゃない

261 名前:デフォルトの名無しさん [2009/07/13(月) 11:19:26 ]
ListViewでItemをひとつひとつ.Selected=Trueする方法で選択していくと、
Items.Count が非常に多い場合にはあまりに時間がかかりすぎることが
わかりました。

Items.Count=10000ぐらいで2分ぐらい(Core2Duo/2GHz)。

ところが例えばExplorerでファイルを同じくらい用意してやってみると瞬時に
全部が選択されました(3秒ぐらい)。これと同じ程度のスピードで選択
したいと思います。良い方法がありましたらご指導のほどお願いしたく。

よろしくお願いします。

262 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 11:49:28 ]
試したけど3秒くらいだったよ。
イベントハンドラがあったりする?
あと描画関係なら、BeginUpdate - EndUpdateで挟むとか

263 名前:デフォルトの名無しさん [2009/07/13(月) 11:59:23 ]
>>262
実地に調べてまでして下さり、大変ありがとうございます!
いろいろすみませんです。

>BeginUpdate - EndUpdateで挟む

これたった今やってみました。結果として時間の変化はありませんでした。

>イベントハンドラがあったりする?

わかりました、すぐ調べてみます。どうもです!




264 名前:261 [2009/07/13(月) 12:15:11 ]
>>262
>イベントハンドラ

この件、仰るとおりでした。Selectされた時点で、何かのメッセージの
Hookが行われているようでした!これは別のコントロールのものでしたが
対策を考えてみます。ご指導、大変どうもでした!助かりました!


265 名前:デフォルトの名無しさん mailto:sage [2009/07/13(月) 19:26:25 ]
インデックスで回してない?
foreachにすれば大丈夫だと思うけど。

266 名前:デフォルトの名無しさん [2009/07/13(月) 23:23:23 ]
VirtualModeにしてみたら?

267 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 09:41:49 ]
良く使うジェネリックコレクションは何?
とりあえずList<T>とDictionary<T>覚えておけばいい?

268 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 09:42:31 ]
Dictionary<K,V>だった。

269 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 09:52:07 ]
K,VじゃなくてTKey,TValueな
型パラメータの命名ガイドラインは接頭辞Tプラスその型引数の意味
(ただし用途が明らかな場合List<T>とかはT一字でOK)

2.0ならあとはLinkedList<T>, KeyedCollection<TKey, TItem>辺り?
あ、Queue<T>とStack<T>があった
3.0(WPF)ならObservableCollection<T>
3.5はHashSet<T>とか? コレクションじゃないけどやはり最重要はIEnumerable<T>だな

270 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 10:24:18 ]
>>269
ふむふむ。
IEnumerable<T>はLINQで出て来るなあ。
ObservableCollection<T>はWPF本で出てきたけど
まだいいや。

List<T>
LinkedList<T>
KeyedCollection<TKey, TItem>
Dictionary<TKey, TValue>
IEnumerable<T>

とりあえずこのあたりからマスターする。


271 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 10:29:51 ]
あ、KeyedCollectionは後で良いよ
つか全体にマスターするほどでもないような
IEnumerable<T>以外は

272 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 13:37:18 ]
T[] も忘れないで上げてください、影薄いですけど

273 名前:デフォルトの名無しさん [2009/07/14(火) 21:15:32 ]
>>269
.NETの型引数の命名規則は合理的で優れてるよな
java式のK,Vとかイミフ



274 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 21:33:54 ]
Tとかそういう意味だったのかw
ほかの引数にSとかUとかつけてたわw

275 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 21:43:12 ]
c++テンプレートのTypenameだよね






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

前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