- ふらっと C#,C♯,C#(初心者用) Part145
776 :デフォルトの名無しさん (ワッチョイ 93bd-AvZR)[]:2019/11/22(金) 00:36:21.37 ID:k4KfXICB0 - 長い名前を持つクラスに、thisを返すメソッドがあるとします
// 超長いクラス名 class VeryLongLongClassName { // thisを返すメソッド VeryLongLongClassName Foo( ) { return this; } } このとき、Foo()の定義につけるクラス名を省略、 あるいは置き換える方法はありますか? たとえば以下のような形が理想です var Foo() { … } // 型推論っぽく書けるとか __CLASS__ Foo() { … } //自身のクラスを表す予約語とか
|
- ふらっと C#,C♯,C#(初心者用) Part145
779 :デフォルトの名無しさん (ワッチョイ 93bd-AvZR)[]:2019/11/22(金) 01:39:19.16 ID:k4KfXICB0 - ありがとうございます
ないですかー 残念
|
- ふらっと C#,C♯,C#(初心者用) Part145
782 :デフォルトの名無しさん (ワッチョイ 93bd-AvZR)[]:2019/11/22(金) 02:06:03.92 ID:k4KfXICB0 - 戻り値が特に必要ないメソッドはreturn thisにして繋げれるようにしておこうかなあと
return thisにするか同じクラスをnewするかはさておき
|
- ふらっと C#,C♯,C#(初心者用) Part145
788 :デフォルトの名無しさん (ワッチョイ 93bd-AvZR)[sage]:2019/11/22(金) 11:21:07.27 ID:k4KfXICB0 - >>784
そういう話ではない それだと「変数をvarで定義するのは設計が間違っているからだ」と言ってるようなもん
|
- ふらっと C#,C♯,C#(初心者用) Part145
793 :776 (ワッチョイ 93bd-AvZR)[sage]:2019/11/22(金) 12:21:55.56 ID:k4KfXICB0 - なんか結論としては>99の質問と同じような感じになっちゃったけど
最初の質問が微妙に異なるので見落ちとしてた、すまん >>787 単純に自身と同型のオブジェクトを返すときに、なんかスマートな方法あるのかな?と思っただけ 言語によってはそのへんの仕組みがあったりする ファイルスコープでのエイリアスが可能なら>>778の言うように 分かりやすいところに ThisClass みたいな名前のエイリアスを用意しておいて クラス内部では基本的にそっちを使うのもアリかなと思っている 予約語ではないのでエディタとの相性はそこまで良くないけのが欠点か
|
- ふらっと C#,C♯,C#(初心者用) Part145
795 :776 (ワッチョイ 93bd-AvZR)[sage]:2019/11/22(金) 12:29:12.04 ID:k4KfXICB0 - >>791
なるほど、確かにそうだな 動的な言語だとまた違うんだろうけど比較できるようなもんでもないしな
|
- ふらっと C#,C♯,C#(初心者用) Part145
796 :776 (ワッチョイ 93bd-AvZR)[sage]:2019/11/22(金) 12:35:32.03 ID:k4KfXICB0 - >>794
んだね アリかナシかで言えばアリだと思ったけど 言語仕様として存在しないなら自分個人ではなるべく避けたいな
|
- ふらっと C#,C♯,C#(初心者用) Part145
800 :776 (ワッチョイ 93bd-AvZR)[sage]:2019/11/22(金) 13:22:21.21 ID:k4KfXICB0 - 型推論ともちょっと違うからなあ
|