- 299 名前:デフォルトの名無しさん [2015/11/20(金) 22:50:35.51 ID:KMWFgUCm.net]
- クラスのstaticメンバ関数で、継承先の型って見られますか?
class Base { static T[] takusanMake(T)(int n) { //Hogeから呼んでT=Hogeがほしい T[] ret = new T[n]; foreach (ref e; ret) { e = new T; } // ... Baseのフィールドしかいじらないような設定 ... return ret; } } class Hoge : Base { } void main() { //Hoge auto hoge = Hoge.takusanMake(30); } 内容はともかく、大体こんな感じのことをしたいです Baseから派生したクラスで定義するとか、ちゃんと!(Hoge)してもいいんですが、 (this T)を見てから何か方法があるような気がしてきて・・・
|

|