ふらっと C#,C♯,C# ..
934:デフォルトの名無しさん
22/11/23 20:42:35.56 wPRe5xEXd.net
>>922
4. 列挙子の追加がしたい
これが入ってくるから、さらにややこしい
こちらは臨機応変かなぁ
935:デフォルトの名無しさん
22/11/23 20:45:01.02 KUj2Jy2fa.net
>>933
だからそこに使うなって話だぞ
何度言えばわかるんだよ?
継承しなきゃ使えないとかいうイミフな条件ついてるのにどう使う気なんだそれ?w
936:デフォルトの名無しさん
22/11/23 21:04:41.04 Gf+fcBNM0.net
>>934
列挙子の追加というのがもともとやりたいことでそれは大前提だと思う。
そこに継承を使うのは無理筋だから他の手でやれということで。
937:デフォルトの名無しさん
22/11/23 21:17:19.11 KUj2Jy2fa.net
できないことを地面に転がってしたいしたいと泣きわめくのはプログラマーとは言えないな
ツールはそこに揃ってる
なら最適な方法をみつけるのがプログラマーの仕事だ
XY問題でいつまでも時間潰すのはただの無能
↓100回読んどけ
URLリンク(ja.wikipedia.org)
938:デフォルトの名無しさん
22/11/23 21:23:05.30 QiNG678ud.net
>>984
>>922の1番がこれよね
ID:w1dmgQVP0
4番はこっち
ID:g5bfG+kA0
継承ではなく追加したい、みたいな話
包含に近いか?
939:デフォルトの名無しさん
22/11/23 21:24:33.41 QiNG678ud.net
安価ミス、、、
>>936宛ね
940:デフォルトの名無しさん
22/11/23 21:48:33.88 +3bsKbsu0.net
状態遷移ってよく知らんけど
必要に迫られるごとに似たようなことはやってるな
941:デフォルトの名無しさん
22/11/23 21:52:28.30 +3bsKbsu0.net
複数のテーブル値関数を full outer join すると面白い結果が得られるぞ
C#からは脱線するが。
機会があれば業務適用しようと思ってる
942:デフォルトの名無しさん
22/11/23 22:10:16.15 Gf+fcBNM0.net
>>935
有限状態を表現するのにenumを使うのはごく普通のことでそれに文句つけてるのはお前さんだけだが?
代わりにいったい何を使えと言うんだろう?
943:デフォルトの名無しさん
22/11/23 22:36:14.78 Mu4NVEsX0.net
状態ごとの派生クラス作ったほうが楽じゃないの
enumを使い回そうってのがまずよくわかんないわ
944:デフォルトの名無しさん
22/11/23 22:51:15.68 v/FrQePk0.net
Statelessとか見たら腰抜かしそう
945:デフォルトの名無しさん
22/11/23 23:43:15.34 rAuww2HaM.net
こんな機能があれば便利なのにってのは分からんでも無いけど
他の言語も含めた実装状況見れば少数派がデカい声出してるだけでしょ
946:デフォルトの名無しさん
22/11/24 00:18:19.16 R18LG1aZ0.net
>>942
何をってもう何度も書いただろw
enumを使うことでうまくいかないのが明白になったなら固執するのがアホ
オブジェクトやクラスはハッシュコード持ってるからenumでなくともswitchで処理できるし継承もできる
状態遷移状態遷移言ってるが教科書コピペするんじゃなく何をどうしたいのかを見据えてそれを実現しなきゃいけないぞw
947:デフォルトの名無しさん
22/11/24 00:21:21.14 6EroDtbH0.net
>>923
「継承」できないしするのはおかしいのは分かったから
enumを「拡張」したいって思う
拡張したいって用途にenumを使う
どっちがおかしいって?
その理由が単にenumがそうなってないってなら、そうあるべきだって議論はありえると思うが
>>925
別に俺は固執する気はないので、そういうことはできないってならできないで良いんだが
もっといい方法って具体的には?
948:デフォルトの名無しさん
22/11/24 00:24:41.88 R18LG1aZ0.net
例えばステートマシンのノードの一つをカーソルで参照するだけでカレントステートを表現できるしカーソルを動かせばそれはもう状態遷移だろ
ノードをオブジェクトにすれば種類によって違うプロパティやメソッドも持てる
ここにenumの入る余地などない
俺が何を言ってるかわからんとすればお前の勉強不足だから伏して教えを請え
949:デフォルトの名無しさん
22/11/24 00:54:01.50 uAP2KDnH0.net
enumて要素を限定するためのもんでしょ
拡張できたらぐちゃぐちゃじゃん
拡張した場合また別の名前なり必要で別ものになるでしょ
950:デフォルトの名無しさん
22/11/24 06:12:20.08 0c/PVttN0.net
>>949
ぐちゃぐちゃになるかどうかは使い方次第
951:デフォルトの名無しさん
22/11/24 11:04:40.36 Qxz+vdGfp.net
クラス内でしか意味がないものを他クラスで判断に使う事自体が問題じゃね?
952:デフォルトの名無しさん
22/11/24 12:05:41.62 I9DGq0SZa.net
ひょっとしてと思って「unity 状態」でググッたら質問者のやりたいことがわかったわw
キャラクタを委譲じゃなく継承させる糞コードでなんちゃってステートパターンしたいんだなw
継承したキャラクタは行動できるパターンが増えるから状態もそれによって増やしたいということだろ
キャラクタを継承させるという糞仕様から直すのが正解だがそれをしたくないならenumじゃなくクラス使えよ
その状態だけ継承させればキャラクタの継承要らないんじゃねというところに気づけばみんなが何を言ってたかわかるようになるかもしれんぞ
953:.NET MAUI HighSchool
22/11/24 12:19:13.38 DPMQyp0E0.net
Unityってクラスないの?
954:デフォルトの名無しさん
22/11/24 12:54:31.34 P04N2b5w0.net
継承とか拡張とは違うけど
enum StandardColor: {Red, Green, Blue}
enum ExtendedColor: {Teal, Turquoise}
とあった時にStandardColorとExtendedColorはそれぞれ個別の用途でも使うし
両方混ぜた集合からどちらか一方だけ選択する用途でも使いたいというのは理解できる
この場合はC#では言語的にはまだサポートされてない機能だから
サードパーティのライブラリを使うか自作するか
955:デフォルトの名無しさん
22/11/24 17:55:35.91 88NBfQl90.net
Unityでもポリモーフィズムを実現していればクラスのカプセル化が効くから
Stateで状態が切り替わる振る舞いは同じでもサブクラスで提供される機能を変えられる
ポリモーフィズムの実現が主題であってenumに依存するとかしないとかどうでもいい事な気がする
956:デフォルトの名無しさん
22/11/24 18:42:01.91 EbMeVnega.net
enumはポリモーフィズムに使うものじゃねえんだって話をしてるんだよw
957:デフォルトの名無しさん
22/11/24 19:12:02.78 88NBfQl90.net
仕様未使用はどうでもいいって言ってるのを何故復唱する必要があるのか?
958:デフォルトの名無しさん
22/11/24 19:17:15.44 6EroDtbH0.net
で、結局enumの使いどころはどこなんだ?
959:デフォルトの名無しさん
22/11/24 19:20:15.08 NYxgvrZS0.net
人生で数々のenumに触れてきて今まで継承したいと思うenumに遭遇したことがない
私は思う
不完全なenumはそれ自体がバグなのだと
960:デフォルトの名無しさん
22/11/24 19:25:58.70 88NBfQl90.net
多次元配列やジャグ配列で事足りるからenumなんぞいらんでしょ
961:デフォルトの名無しさん
22/11/24 19:26:08.06 1uxs9LdZ0.net
使えるものを使うだけじゃんよ。
962:デフォルトの名無しさん
22/11/24 19:35:14.11 JYVIn9dZa.net
使うべきところでな
enumの使い方は既に教えた
そこじゃないのも何度も言った
これでわからないボンクラは何やってもだめ
963:デフォルトの名無しさん
22/11/24 19:38:42.34 88NBfQl90.net
色々混ざってる糖質がいろんな人間が言ったことを勝手に混ぜて
訳の分からない事を言ってるのか?
964:デフォルトの名無しさん
22/11/24 19:45:03.01 JYVIn9dZa.net
色んな糖質がバカなことばかり言ってるのに区別する必要あるか?w
965:デフォルトの名無しさん
22/11/24 19:46:38.20 JYVIn9dZa.net
見りゃわかるが俺はバカなこと言ったやつをバカにしてるだけだからそれにカチンとくるやつは同じバカだぞ
966:デフォルトの名無しさん
22/11/24 19:48:18.80 88NBfQl90.net
最初に質問した奴はステートマシンとステートパターンの区別もポリモーフィズムも知らない奴だったわけだが
何でも同じに見えるというならそうなのだろう 知った事ではないし興味すらもない
勝手に吠えてればいい
967:デフォルトの名無しさん
22/11/24 20:22:54.20 JYVIn9dZa.net
enumだと都合が悪いと質問者すら発狂してるのにいつまでもそれに固執するようなのは同じレベルでしかないだろw
都合が悪いなら使ったらだめと気づこうや
968:デフォルトの名無しさん
22/11/24 20:28:32.70 88NBfQl90.net
stateにenumは使わなくてもStatePatternは作れるし元々enumは必須ですらない
そもそもポリモーフィズムのメリットが分からない奴が面白い勘違いしてるだけだろ
969:デフォルトの名無しさん
22/11/24 20:44:59.86 x2utmnLfp.net
サボらずに変換メソッド作る
970:デフォルトの名無しさん
22/11/24 20:47:40.88 0c/PVttN0.net
ステートパターンを覚えたてのキッズ同士の争いはよそでやってくれw
971:デフォルトの名無しさん
22/11/25 09:34:35.22 acUkwbrC0.net
おまいらどんだけenumでスレ消費してんだよ
972:.NET MAUI HighSchool
22/11/25 12:13:43.21 RaC0ZQGe0.net
モバイルSuicaにもReactiveUIとか使われてて
結構Rxってもう標準になりつつあるな
これ産み出したC#すごい!
973:.NET MAUI HighSchool
22/11/25 12:20:00.08 RaC0ZQGe0.net
>>4
新スレ建てようとしたけど改行が多すぎるとかで無理だった…
974:デフォルトの名無しさん
22/11/25 13:18:08.44 HZEumDr50.net
立てといた
ふらっと C#,C♯,C#(初心者用) Part157
スレリンク(tech板)
頭のextend~は念のため1行増やしておいた
975:デフォルトの名無しさん
22/11/25 18:03:50.34 b6uMxREG0.net
おつかれー。
と言いつつ埋め。
976:.NET MAUI HighSchool
22/11/25 20:24:56.18 SQhAXb/D0.net
>>974
サンキュー
977:デフォルトの名無しさん
22/11/25 20:27:00.27 Ex0f5l5+M.net
列挙型の元祖はPascal
978:.NET MAUI HighSchool
22/11/26 08:34:50.54 Ja07f46G0.net
C#isGod
979:デフォルトの名無しさん
22/11/27 23:14:07.98 MIxI7txJ0.net
ume
980:デフォルトの名無しさん
22/11/28 21:44:09.15 vwJLsOsN0.net
bool isGod = true;
981:デフォルトの名無しさん
22/11/28 22:44:48.65 SzIAkLME0.net
うめうめ
982:デフォルトの名無しさん
22/11/28 23:09:55.94 ozyLKgmt0.net
梅火星
983:デフォルトの名無しさん
22/12/09 19:49:47.35 KigkNyOs0.net
いい加減埋めようよ。
984:デフォルトの名無しさん
22/12/09 19:52:30.95 lbVfgM7Sp.net
埋め屋敷
985:デフォルトの名無しさん
22/12/09 20:08:40.11 xaxCUQ87a.net
埋めなくていいよ
次スレもいらん
986:デフォルトの名無しさん
22/12/09 20:10:07.88 8ML1skqU0.net
もッス
987:デフォルトの名無しさん
22/12/09 20:14:42.85 LL4MqSod0.net
誰も必要としてなくて草
988:デフォルトの名無しさん
22/12/09 20:16:37.36 LL4MqSod0.net
NullReferenceException
989:1001
Over 1000 Thread.net
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 82日 5時間 37分 8秒
最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
556日前に更新/249 KB
担当:undef