- ふらっと C#,C♯,C#(初心者用) Part124 [無断転載禁止]©2ch.net
175 :デフォルトの名無しさん (スププ Sd6f-HNW7)[sage]:2016/08/23(火) 11:57:38.54 ID:ZcVGgUHod - みんな言ってるけど、Factoryがこれほど似合うパターンは無いな。
Shapeはabstruct classにして、 staticな関数として、 Shape createInstance(StreamReader s) を作って、各子クラス返えす。 あとは要りそうな関数をabstructで定義しとけば便利じゃないかな。
|
- ふらっと C#,C♯,C#(初心者用) Part124 [無断転載禁止]©2ch.net
177 :デフォルトの名無しさん (スププ Sd6f-HNW7)[sage]:2016/08/23(火) 14:51:59.69 ID:ZcVGgUHod - >>176
いやー、Shapeは流石に、既にかなり抽象的じゃないの? 逆に、Factoryが派生クラスを知ってる範囲で作るべきだとは思うけどな。こういうのは。 ShapeのcreateInstanceに、インスタンス生成関数のデリゲート渡せれば十分では?Javaでもあるまいし。
|
- ふらっと C#,C♯,C#(初心者用) Part124 [無断転載禁止]©2ch.net
181 :デフォルトの名無しさん (スププ Sd6f-HNW7)[sage]:2016/08/23(火) 16:56:14.55 ID:ZcVGgUHod - >>180
別途持って? あんな分かりやすいサンプル見てそういう感想なの?
|
- ふらっと C#,C♯,C#(初心者用) Part124 [無断転載禁止]©2ch.net
185 :デフォルトの名無しさん (スププ Sd6f-HNW7)[sage]:2016/08/23(火) 18:10:50.79 ID:ZcVGgUHod - >>183
別途持ってるも何も、Circleの自分のプロパティだよ。継承してんだから。 子クラスのインスタンスで持ってるよ。 xとyは確かにコピー渡しだけど、プリミティブだからスタック乗って、そのまま居なくなるだろ。 理解しきってないのにコストとか考えない方がいいんでないの?
|
- ふらっと C#,C♯,C#(初心者用) Part124 [無断転載禁止]©2ch.net
186 :デフォルトの名無しさん (スププ Sd6f-HNW7)[sage]:2016/08/23(火) 18:15:21.17 ID:ZcVGgUHod - base(x,y)は何者だと思ってるんだろうか。
ShapeはCircleではないが、CircleはShapeなんだから、キャストもへったくれも無いし、コピーする必要があるとかマジでわからん。 もしかしてIL上そんな表現になんの? 仮想関数ではなくて、プロトタイプの拡張みたいな真似してるのか?
|