[表示 : 全て 最新50 1-99 2chのread.cgiへ]
Update time : 06/30 04:21 / Filesize : 5 KB / Number-of Response : 28
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


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

ふらっとVisual C#,C♯,C#(初心者用) Part95



1 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 22:14:30.27 ]
このスレッドは
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からない場合など、勇気をもって書き込んでください。
内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。

なお、テンプレ2行目が読めない回答者は邪魔なので後述のC#相談室に移動して下さい。

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

関連スレ
ふらっとVisual C#,C♯,C#(初心者用) Part94
toro.2ch.net/test/read.cgi/tech/1337661928/
C#, C♯, C#相談室 Part73
toro.2ch.net/test/read.cgi/tech/1338512087/

2 名前:デフォルトの名無しさん mailto:age [2012/06/29(金) 22:20:44.10 ]


3 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 22:24:19.31 ]
リロードが義務化されました
書き込む前にリロードしましょう

4 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 22:25:51.40 ]
前スレ最後
ジェネリック型パラメータ間に継承関係があっても
ジェネリック型そのものに継承関係は引き継がれない
どうあがいても絶望だよ

5 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 22:27:43.49 ]
A<T>ってするのは大げさすぎると感じる時は
大体の場合A<T>じゃなくて
必要なとこだけA.Method<T>(T item)的な形にすりゃいい

6 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 22:39:51.76 ]
なにかやりたいことがあって、質問者のアプローチが間違っているのは分かるが
目的が分からんのでコメントしづらい

7 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 22:45:20.16 ]
確かにアプローチが間違っているんだろうな。
コンテナクラスだろうが何だろうが、目的が正しければList<A<T>>ってなってる状態に何ら問題はないわけだし。

8 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 23:18:45.91 ]
ジェネリック型にするのは、そのクラスを汎用化したいからだろ。

で、実際に使うときには T に入れる型は決まってるんだろうから、
A<[そのとき実際に使う型]> を継承したダミーのクラスを使うって手もあるような気がするだが、ダメかね。

9 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 23:20:16.72 ]
using Hoge = A<Nantoka>とかしたほうが遥かにマシ

10 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 23:27:51.03 ]
>>8
今回は駄目



11 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 23:42:40.02 ]
1時間格闘してこうなったw
ideone.com/kmDZd

12 名前:デフォルトの名無しさん [2012/06/29(金) 23:43:04.84 ]
HttpStatusCode列挙体の中身にステータスコードの数字がないのですが、変換とか出来ませんか?

13 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 23:45:04.86 ]
intにキャストする

14 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 23:45:06.71 ]
intにキャストしてみろォォォォォォォォォォォォォォォォォォォォォォォォォォォォォォォォ

15 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 23:45:24.76 ]
2秒はセーフだよね
リロードしたよ!

16 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 23:47:03.65 ]
>>15
はいアウトー

17 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 23:48:27.39 ]
デデーン

18 名前:デフォルトの名無しさん [2012/06/29(金) 23:49:26.23 ]
ありがとうございますありがとうございます

助かりました

19 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 23:50:00.70 ]
>>4
インターフェイス使って in か out つけろ。

20 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 23:51:17.02 ]
>>前986
用途によるけどこれじゃ駄目なの?
ideone.com/R8isn



21 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 23:52:16.67 ]
ContainerなのにTを受け入れないのが間違いなんだよ

22 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 23:54:51.93 ]
助かってんのかなこれ

23 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 23:56:58.11 ]
でも
>このクラスは単なるコンテナなのでTには興味がありません
とあるからList<A>を定義したい非ジェネリッククラスの中では
Aの何かに依存しても、Tに依存する処理は無いということじゃないかな

だとしたらその「Aの何か」は非ジェネリックなinterfaceに括り出せるはず

24 名前:デフォルトの名無しさん mailto:sage [2012/06/29(金) 23:58:00.75 ]
だからおbjct

25 名前:デフォルトの名無しさん mailto:sage [2012/06/30(土) 00:12:22.62 ]
ほんとにそれでいいような気がする。

26 名前:デフォルトの名無しさん mailto:sage [2012/06/30(土) 00:12:35.89 ]
class Container<T> where T : IHoge
{
 public List<T> list = new List<T>();
}

interface IHoge{ ... }
interface IHoge<T> : IHoge
でいいわけ

使用者側はIHoge<T>を渡すから<T>の型情報をとれるし
Containerは<T>に依存しない

27 名前:デフォルトの名無しさん mailto:sage [2012/06/30(土) 00:21:50.63 ]
なんかわかりにくい気がするから書きなおすわ

class Container<T> where T : IHoge{ ... }

interface IHoge{ ... }
interface IHoge<T> : IHoge{ ... }

class Hoge<T> : IHoge<T>{ ... }

使用者側
var c = new Container<Hoge<ConcreteClass>>();

このようにすることで、使用者側はConcreteClassの型情報を知ることができ
ContainerはConcreteClassを知らないままでいることが出来る






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

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

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