!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスや酔っぱらいレスはやめてください
>>980を踏んだ人は新スレを建てて下さい。>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■前スレ
ふらっと C#,C♯,C#(初心者用) Part149
http://mevius.5ch.net/test/read.cgi/tech/1608085775/
■関連スレ
C#, C♯, C#相談室 Part94
https://mevius.5ch.net/test/read.cgi/tech/1553075856/
■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/
■情報源
https://docs.microsoft.com/ja-jp/dotnet/standard/class-libraries
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/
https://docs.microsoft.com/en-us/dotnet/standard/class-libraries
http://referencesource.microsoft.com/
・Insider.NET > .NET TIPS - @IT
https://www.atmarkit.co.jp/ait/subtop/features/dotnet/dotnettips_index.html
・DOBON.NET .NET Tips
https://dobon.net/vb/dotnet/index.html
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
ふらっと C#,C♯,C#(初心者用) Part150
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 2b02-+i0H)
2021/03/23(火) 12:58:24.10ID:ACoFzk2L02デフォルトの名無しさん (ワッチョイ 5168-u+xM)
2021/03/23(火) 18:03:39.73ID:VsSEePUk0 List<乙>
3デフォルトの名無しさん (ワッチョイ d901-PDCb)
2021/03/23(火) 21:59:18.80ID:EIK7uDnA0 コンソールでRPGみたいなゲーム作ろうとしてるけど
クラスの作り方がいまいち思い浮かばない
例えば
レベルアップした時にHPとかMPとかのクラスのフィールドをいじりたいけど、レベルクラスに入れるとステータス取るときに毎回status.level.hpみたいにレベルを通らないといけないのが厄介
かといってステータスクラスの中にレベルクラスとHPクラスを内包してしまうとレベルクラスのメソッドが呼び出された時にhpクラスのメソッドが呼び出せない…(staticはなしとして)
どうすれば良いのだ
クラスの作り方がいまいち思い浮かばない
例えば
レベルアップした時にHPとかMPとかのクラスのフィールドをいじりたいけど、レベルクラスに入れるとステータス取るときに毎回status.level.hpみたいにレベルを通らないといけないのが厄介
かといってステータスクラスの中にレベルクラスとHPクラスを内包してしまうとレベルクラスのメソッドが呼び出された時にhpクラスのメソッドが呼び出せない…(staticはなしとして)
どうすれば良いのだ
4デフォルトの名無しさん (ワッチョイ 9301-lXNI)
2021/03/23(火) 23:03:31.32ID:CY92qFOb0 レベルやHPをクラスにしたい理由は?
どういうメソッドを想定してるの?
どういうメソッドを想定してるの?
5デフォルトの名無しさん (アウアウウー Sa5d-7TK3)
2021/03/23(火) 23:04:14.83ID:zRupaTqla >>3
単純に、ステータス、レベル、HP、MPをメンバ変数に持つクラスにすりゃええんちゃう?
レベルアップメソッドを呼ばれたら、それぞれを更新するだけ
最初は難しく考えないで、ありのまま設計して実装してみる
で、破綻しそうなら設計を変えて再実装
そういう試行錯誤も楽しいかもよ
単純に、ステータス、レベル、HP、MPをメンバ変数に持つクラスにすりゃええんちゃう?
レベルアップメソッドを呼ばれたら、それぞれを更新するだけ
最初は難しく考えないで、ありのまま設計して実装してみる
で、破綻しそうなら設計を変えて再実装
そういう試行錯誤も楽しいかもよ
6デフォルトの名無しさん (ワッチョイ 51a7-FMtt)
2021/03/23(火) 23:32:37.84ID:3AlrkluQ0 ゲームはすべてのリアルタイムデータをエクセルに並べるつもりでプログラムを組め
物体同士の相互作用処理が一番多くてかつそれが7つも8つも同時に関わるので
オブジェクト指向言語の機能が役に立たないどころか悪影響すら及ぼす
絶対に使わないほうが楽に組めるぞ
まあ、まずやってみろ
物体同士の相互作用処理が一番多くてかつそれが7つも8つも同時に関わるので
オブジェクト指向言語の機能が役に立たないどころか悪影響すら及ぼす
絶対に使わないほうが楽に組めるぞ
まあ、まずやってみろ
7デフォルトの名無しさん (オッペケ Sr85-DLm1)
2021/03/23(火) 23:52:01.54ID:oR7E8wqDr 偉そうなやつだな
8デフォルトの名無しさん (ワッチョイ b102-+i0H)
2021/03/23(火) 23:59:45.77ID:ACoFzk2L0 でもまあ、とにかくやってみるってのには賛成。
根気よく続けて、それにちょっとした向上心があるなら、そのうちそれなりにはなる。
>>3 の人は、直接的なアドバイスを求めてるんだろうけど、ちょっとアドバイスしたくらいでどうにかなるようなもんでもないなぁって感じ。
根気よく続けて、それにちょっとした向上心があるなら、そのうちそれなりにはなる。
>>3 の人は、直接的なアドバイスを求めてるんだろうけど、ちょっとアドバイスしたくらいでどうにかなるようなもんでもないなぁって感じ。
9デフォルトの名無しさん (ワッチョイ 5168-u+xM)
2021/03/24(水) 03:06:14.87ID:hZzg7ROH0 >>3
オブジェクト指向言語だからクラスは物、オブジェクトであって、
RPGのキャラはそれぞれステータスを持つオブジェクト=クラス。
キャラにはステータスがあるなら、それぞれのキャラクラスにはステータスクラスが保有されるべき。
・・・などと自分なりに整理して、設計してみてはどうか。
その設計で厄介なことがあっても、設計に納得出来るなら、それは通るしかない厄介事なのかもしれない。
それを回避したり厄介を軽減する手段はいろいろ有ると思う。
やってれば身についてくる。その過程がまた楽しい。
設計が正しいかどうか、それは自分が決めればいいが、想像が付かないなら書籍を漁る。
オブジェクト指向言語だからクラスは物、オブジェクトであって、
RPGのキャラはそれぞれステータスを持つオブジェクト=クラス。
キャラにはステータスがあるなら、それぞれのキャラクラスにはステータスクラスが保有されるべき。
・・・などと自分なりに整理して、設計してみてはどうか。
その設計で厄介なことがあっても、設計に納得出来るなら、それは通るしかない厄介事なのかもしれない。
それを回避したり厄介を軽減する手段はいろいろ有ると思う。
やってれば身についてくる。その過程がまた楽しい。
設計が正しいかどうか、それは自分が決めればいいが、想像が付かないなら書籍を漁る。
10デフォルトの名無しさん (ワッチョイ d901-PDCb)
2021/03/24(水) 06:37:38.52ID:k6isLik00 3だけど
一応4回くらい違う設計で同じ処理のコードを作ってみたんだが、やりたいことは
親クラスに子クラス1,2がいて
子クラス1のフィールドが更新されたとき、子クラス2のフィールドを更新したい
一応現状はref使ってインスタンスされてる子クラス2のアドレスを保存して子クラス1で間接的に更新してるけど
子クラス3,4,…って増えた時に毎回コンストラクタの引数変えて処理追加させるのは冗長的だなぁと思って違うやり方したいと考えてるけど思いつかない…
一応4回くらい違う設計で同じ処理のコードを作ってみたんだが、やりたいことは
親クラスに子クラス1,2がいて
子クラス1のフィールドが更新されたとき、子クラス2のフィールドを更新したい
一応現状はref使ってインスタンスされてる子クラス2のアドレスを保存して子クラス1で間接的に更新してるけど
子クラス3,4,…って増えた時に毎回コンストラクタの引数変えて処理追加させるのは冗長的だなぁと思って違うやり方したいと考えてるけど思いつかない…
11デフォルトの名無しさん (ワッチョイ d901-PDCb)
2021/03/24(水) 06:43:09.14ID:k6isLik00 >>4
パラメータクラスに最大値、最小値、現在値をプロパティで持つようにして
HP、MP、LV、EXP、クラスをパラメータクラスを継承して作ろうとしてる
さいごにステータスクラスとしてHPからEXPをフィールドに持つようにしてコンストラクタでインスタンス化させるようにしてる
パラメータクラスに最大値、最小値、現在値をプロパティで持つようにして
HP、MP、LV、EXP、クラスをパラメータクラスを継承して作ろうとしてる
さいごにステータスクラスとしてHPからEXPをフィールドに持つようにしてコンストラクタでインスタンス化させるようにしてる
12デフォルトの名無しさん (ワッチョイ d901-PDCb)
2021/03/24(水) 07:00:45.85ID:k6isLik00 class Prameter{
private int _Max;
public int Max{
set MaxUpdate(value);
get return _Max;
}
protected virtual
void MaxUpdate(int val){
_Max=val;
}
最小値も上と同様
現在値も上と同様※
}
※少し実装とは違うけどざっくりとしたらこんな感じのクラスを現状HP,MP,Level,exp全クラスにそれぞれ継承してる
レベルアップとかは現在値の更新時処理のoverrideで処理変えたりして実装してるんだ
private int _Max;
public int Max{
set MaxUpdate(value);
get return _Max;
}
protected virtual
void MaxUpdate(int val){
_Max=val;
}
最小値も上と同様
現在値も上と同様※
}
※少し実装とは違うけどざっくりとしたらこんな感じのクラスを現状HP,MP,Level,exp全クラスにそれぞれ継承してる
レベルアップとかは現在値の更新時処理のoverrideで処理変えたりして実装してるんだ
13デフォルトの名無しさん (ワッチョイ d901-PDCb)
2021/03/24(水) 07:19:03.14ID:k6isLik00 >>6
やっぱりそうか。Cのような関数での設計なら単純で作りやすいんだがオブジェクト指向の練習と思ってやってると意外と難しかった。
ちょうど7つも8つもパラメータが増えてきていちいち引数変えたりするの面倒やしクラスにするメリットがあまりないな…
やっぱりそうか。Cのような関数での設計なら単純で作りやすいんだがオブジェクト指向の練習と思ってやってると意外と難しかった。
ちょうど7つも8つもパラメータが増えてきていちいち引数変えたりするの面倒やしクラスにするメリットがあまりないな…
14デフォルトの名無しさん (ワッチョイ 51a7-FMtt)
2021/03/24(水) 07:39:20.22ID:IIHDBzfT015デフォルトの名無しさん (ワッチョイ 9301-lXNI)
2021/03/24(水) 12:54:19.52ID:C9/npL5e0 >>11
ステータスクラスがHP, MP, LV, EXPの最大値、最小値、現在値をそれぞれ直接int等で持つ構成と
ステータスクラスがHP, MP, LV, EXPの各クラスのインスタンスを保持する構成とを比較して
後者にどういうメリットがあるのか、もしくはないのかを考えればいいんでないのかな?
>>10
>親クラスに子クラス1,2がいて
親クラス・子クラスという表現は一般的に継承関係を指すので
あるクラスが別のクラスのインスタンスを保持してる場合は親クラス・子クラスという表現は使わないほうがいい
>子クラス1のフィールドが更新されたとき、子クラス2のフィールドを更新したい
今回のケースで使うべきかどうかは微妙だけど
フィールドが更新されたときにそれをイベントとして通知するようなパターンを使えば
クラス1のコードでクラス2を参照する必要がなくなって通知先が増えてもクラス1を変更しなくてよい
ステータスクラスがHP, MP, LV, EXPの最大値、最小値、現在値をそれぞれ直接int等で持つ構成と
ステータスクラスがHP, MP, LV, EXPの各クラスのインスタンスを保持する構成とを比較して
後者にどういうメリットがあるのか、もしくはないのかを考えればいいんでないのかな?
>>10
>親クラスに子クラス1,2がいて
親クラス・子クラスという表現は一般的に継承関係を指すので
あるクラスが別のクラスのインスタンスを保持してる場合は親クラス・子クラスという表現は使わないほうがいい
>子クラス1のフィールドが更新されたとき、子クラス2のフィールドを更新したい
今回のケースで使うべきかどうかは微妙だけど
フィールドが更新されたときにそれをイベントとして通知するようなパターンを使えば
クラス1のコードでクラス2を参照する必要がなくなって通知先が増えてもクラス1を変更しなくてよい
16デフォルトの名無しさん (ワッチョイ 9301-lXNI)
2021/03/24(水) 13:06:41.79ID:C9/npL5e0 https://paiza.io/projects/jSt0Q60s11SN8n8JJzO_7Q
これ、とあるゲームのキャラクターステータスだけどベタなキーバリューペアで管理してる
スキルや装備によってバトル中のHPや攻撃力/防御力とかが変化するから本来の値と底上げされた値は別項目で管理されてる
これ、とあるゲームのキャラクターステータスだけどベタなキーバリューペアで管理してる
スキルや装備によってバトル中のHPや攻撃力/防御力とかが変化するから本来の値と底上げされた値は別項目で管理されてる
17デフォルトの名無しさん (ワッチョイ 5168-4Ddi)
2021/03/24(水) 15:14:08.35ID:hZzg7ROH0 何か既存のRPGでやってるステータス計算の再現なのかな。
C#の仕組みを凝ると、デバッグが怖そう。
C#の仕組みを凝ると、デバッグが怖そう。
18デフォルトの名無しさん (スププ Sd33-PDCb)
2021/03/24(水) 17:52:37.32ID:JXkKcrLid なるほど、
皆様、様々なアドバイスありがとうございます。
特に親、子クラスとかのニュアンスや使い方の指摘はありがたい。
ちなみにゲームの再現はしてないけど、イメージはCUIのドラクエのイメージ。それをオブジェクト指向の練習としてクラスで作ってみようとして一番最初で詰んだという経緯っす。
メリットデメリットは正直オブジェクト指向が初めてだからよくわからないってのが本音。ただ知識として幅は広がってる気がする。MVCモデルとかで実現するのかなーとか考えたりイベントをリストで管理するのかなーとか色々模索はしたけど結局いい感じにならず苦難中。
皆様、様々なアドバイスありがとうございます。
特に親、子クラスとかのニュアンスや使い方の指摘はありがたい。
ちなみにゲームの再現はしてないけど、イメージはCUIのドラクエのイメージ。それをオブジェクト指向の練習としてクラスで作ってみようとして一番最初で詰んだという経緯っす。
メリットデメリットは正直オブジェクト指向が初めてだからよくわからないってのが本音。ただ知識として幅は広がってる気がする。MVCモデルとかで実現するのかなーとか考えたりイベントをリストで管理するのかなーとか色々模索はしたけど結局いい感じにならず苦難中。
19デフォルトの名無しさん (ワッチョイ 937c-4Ddi)
2021/03/24(水) 17:59:16.27ID:HEdEJwPg0 最初はあんまり沢山クラス作らない方がいいかと思う
段々とここは分離した方がいいとか継承した方がいいとか分かってくるので
とにかく動くものを作れるかどうかで勉強するにしても先に進めるかどうかの分岐点になるからな
段々とここは分離した方がいいとか継承した方がいいとか分かってくるので
とにかく動くものを作れるかどうかで勉強するにしても先に進めるかどうかの分岐点になるからな
20デフォルトの名無しさん (ワッチョイ 0b33-zgiT)
2021/03/24(水) 18:09:40.53ID:spck33He0 オブジェクト指向の学習が目的なら、ポケモンで学ぶオブジェクト指向みたいなのがいくつかあるから
そういったPOSTを眺めるとなんとなく雰囲気がつかめるかもしれない
そういったPOSTを眺めるとなんとなく雰囲気がつかめるかもしれない
21デフォルトの名無しさん (アウアウウー Sa5d-oXDN)
2021/03/24(水) 18:29:08.45ID:c5QGfFFqa ゲーム自体があんまりOOP向きの題材じゃないかもしれないよ。
モデル化する必要があるのはゲームの世界を成立させている「舞台装置」
であってプレーヤーの目に見える表層的なキャラじゃなかったりすると思うんだけど
前者は得てして抽象的な存在になるし、どうしても後者に引きずられてしまう。
知らんけど。
大昔シューティングゲームとかボードゲームがいかにOOP向きじゃないかって
論争があったねw
モデル化する必要があるのはゲームの世界を成立させている「舞台装置」
であってプレーヤーの目に見える表層的なキャラじゃなかったりすると思うんだけど
前者は得てして抽象的な存在になるし、どうしても後者に引きずられてしまう。
知らんけど。
大昔シューティングゲームとかボードゲームがいかにOOP向きじゃないかって
論争があったねw
22デフォルトの名無しさん (ワッチョイ d901-PDCb)
2021/03/24(水) 18:34:43.36ID:7kvkVNgG0 そうか…
既にOOPに対して嫌悪感を抱き始めるこの始末。
とはいえ継承ができたりオーバーライドして変更したりできるのは良いね
〇〇/××って形の表示するのもは全部同じパラメータクラスで扱えるし、ちょこっと変えたいとなるとオーバーライドで消したりオーバーロードで処理増やしたりできるもんね。
うーん、やっぱC#はよーわからんw
既にOOPに対して嫌悪感を抱き始めるこの始末。
とはいえ継承ができたりオーバーライドして変更したりできるのは良いね
〇〇/××って形の表示するのもは全部同じパラメータクラスで扱えるし、ちょこっと変えたいとなるとオーバーライドで消したりオーバーロードで処理増やしたりできるもんね。
うーん、やっぱC#はよーわからんw
23デフォルトの名無しさん (ワッチョイ d901-PDCb)
2021/03/24(水) 18:43:27.34ID:1tcqqVj20 ちなみに、C#(プログラミング)初心者が理解しやすそうな題材ってあります?
まだhelloworldから変数作って弄るよりかはゲームのほうが楽しめるんかなと思ってそれで始めたらドツボ入ったんだよね。
難易度も低めが良いけど…(マルチスレッドやGUIでないようなもの)
まだhelloworldから変数作って弄るよりかはゲームのほうが楽しめるんかなと思ってそれで始めたらドツボ入ったんだよね。
難易度も低めが良いけど…(マルチスレッドやGUIでないようなもの)
24デフォルトの名無しさん (ワッチョイ 937c-4Ddi)
2021/03/24(水) 18:57:55.30ID:HEdEJwPg0 どういうものを最終的に作りたいかによるけどゲームが目標なら
最初からUnityで勉強するのもアリかなと思う
勉強ならコンソールアプリの方が文字だけの世界だから分かりやすいけど
最初からWinFormsのプロジェクト作ってボタンやテキストボックスなど配置して
GUIのアプリのつくり方を勉強するのも良いかも知れない
GUIだとButtonにはClickイベントが、TextBoxにはTextChangedイベントがあるとか
(デザイン画面のボタンなどをダブルクリックすれば、上記の説明した一番使うであろうイベントの
実装が追加されるようになっている)
そういうイベントにより処理を行うみたいな形になるので、リアルタイムのゲームとは違った感じになるかと
どっちにしてもプログラムしてみて動かしてを繰り返し出来る方が望ましいかな
最初からUnityで勉強するのもアリかなと思う
勉強ならコンソールアプリの方が文字だけの世界だから分かりやすいけど
最初からWinFormsのプロジェクト作ってボタンやテキストボックスなど配置して
GUIのアプリのつくり方を勉強するのも良いかも知れない
GUIだとButtonにはClickイベントが、TextBoxにはTextChangedイベントがあるとか
(デザイン画面のボタンなどをダブルクリックすれば、上記の説明した一番使うであろうイベントの
実装が追加されるようになっている)
そういうイベントにより処理を行うみたいな形になるので、リアルタイムのゲームとは違った感じになるかと
どっちにしてもプログラムしてみて動かしてを繰り返し出来る方が望ましいかな
25デフォルトの名無しさん (ワッチョイ d901-PDCb)
2021/03/24(水) 19:03:33.84ID:1tcqqVj20 なるほどなー
よく考えたら最終的にはGUIのアプリケーションプログラムが作りたいと思ってた。ゲームは特に好きじゃないけど好きな人が多そうだから説明する時にも役立つかなとは思ってゲームにしてた具合。
先にFormやるのもありかも
よく考えたら最終的にはGUIのアプリケーションプログラムが作りたいと思ってた。ゲームは特に好きじゃないけど好きな人が多そうだから説明する時にも役立つかなとは思ってゲームにしてた具合。
先にFormやるのもありかも
26デフォルトの名無しさん (スププ Sd33-n6qz)
2021/03/24(水) 21:14:45.45ID:6P4Y/Xh7d ライフゲーム
27デフォルトの名無しさん (ワッチョイ 9301-lXNI)
2021/03/24(水) 21:41:45.26ID:C9/npL5e0 いろんな種類のキャラを動かす系のゲームはOOPに向いてると思うけどな
実際そういうゲームのほとんどがオブジェクト指向で作られてるわけで
プログラミングを学ぶ目的に適してるかと言われると微妙だが
実際そういうゲームのほとんどがオブジェクト指向で作られてるわけで
プログラミングを学ぶ目的に適してるかと言われると微妙だが
28デフォルトの名無しさん (ワッチョイ 51a7-FMtt)
2021/03/24(水) 21:51:54.97ID:IIHDBzfT0 >>27
向いてない
オブジェクト指向って
オブジェクト同士の処理を綺麗に書く
ように作られてない
全オブジェクトが存在するシーンにほぼすべての処理を記述することになる
マップ情報がないとキャラは移動すらできないことがすぐにわかる
ではマップとキャラのデータが混在した処理をどこに記述するべきか?
シーンに決まってる
なのでゲームシステムに関わるほぼすべての処理をシーンに記述することになる
もう仮にオブジェクト個別の処理が2〜3個見つかった程度で個別のクラスなんかに書くのはバカってぐらい
全部シーンに書くことになる
向いてない
オブジェクト指向って
オブジェクト同士の処理を綺麗に書く
ように作られてない
全オブジェクトが存在するシーンにほぼすべての処理を記述することになる
マップ情報がないとキャラは移動すらできないことがすぐにわかる
ではマップとキャラのデータが混在した処理をどこに記述するべきか?
シーンに決まってる
なのでゲームシステムに関わるほぼすべての処理をシーンに記述することになる
もう仮にオブジェクト個別の処理が2〜3個見つかった程度で個別のクラスなんかに書くのはバカってぐらい
全部シーンに書くことになる
29デフォルトの名無しさん (ワッチョイ 5168-4Ddi)
2021/03/25(木) 06:17:54.99ID:PnLvSLd80 言語そのものよりライブラリに何があるのか把握しきれなくて辛い。
自分でクラスを作ったら、もう既に.Netにあったりするし。
辞書を熟読するような事前の勉強が必要なのかな。
自分でクラスを作ったら、もう既に.Netにあったりするし。
辞書を熟読するような事前の勉強が必要なのかな。
30デフォルトの名無しさん (ワッチョイ 51de-FMtt)
2021/03/25(木) 07:11:43.36ID:/8oIOqtL0 >>29
必要なのは作る前にググる癖じゃね?
必要なのは作る前にググる癖じゃね?
31デフォルトの名無しさん (ワッチョイ d133-3UcT)
2021/03/25(木) 08:33:30.77ID:tiLz+LJ90 >>29
わかる。会社に入るとドキュメントの無いライブラリも加わる。
わかる。会社に入るとドキュメントの無いライブラリも加わる。
32デフォルトの名無しさん (ワッチョイ 5924-FrbH)
2021/03/25(木) 08:39:46.38ID:qKMPIZcm0 ゲームって普通にOOP学習にはもってこいじゃね?
一見全く種類の違う自キャラや敵やNPCなどを一つのベースクラスから派生させたりとかオブジェクト指向の有難みを享受しやすいジャンルだと思うけどな
まぁそういうことせずとも一度C言語を使ってみればC#を使ってる時点でデフォでめちゃくちゃオブジェクト指向の恩恵に授かってるというのを認識できるけど
一見全く種類の違う自キャラや敵やNPCなどを一つのベースクラスから派生させたりとかオブジェクト指向の有難みを享受しやすいジャンルだと思うけどな
まぁそういうことせずとも一度C言語を使ってみればC#を使ってる時点でデフォでめちゃくちゃオブジェクト指向の恩恵に授かってるというのを認識できるけど
33デフォルトの名無しさん (スフッ Sd33-u+xM)
2021/03/25(木) 09:28:18.12ID:WBb7w08Pd ゲームだと単純に楽しいし、良く知ってる世界だし。
異世界小説が流行るのも、みんなリアルよりゲームのほうが詳しいからね。
異世界小説が流行るのも、みんなリアルよりゲームのほうが詳しいからね。
34デフォルトの名無しさん (ブーイモ MMcb-92UB)
2021/03/25(木) 13:24:44.00ID:P2foE7HjM ゲームはOOPより関数型のがやりやすい
OOPだとゲーム状態が大量のオブジェクトに分散してしまい管理が追いつかなくなる
OOPだとゲーム状態が大量のオブジェクトに分散してしまい管理が追いつかなくなる
35デフォルトの名無しさん (ワッチョイ 5335-n6qz)
2021/03/25(木) 13:26:41.67ID:KsV0Sf9V0 パラメータ管理とレンダリングは別視点
36デフォルトの名無しさん (ワッチョイ 695f-R0OD)
2021/03/25(木) 13:29:23.03ID:Nsykn7+b0 unityやwpfで何か作ったらいいんじゃない?
嫌でもOOPを使うことになるし
嫌でもOOPを使うことになるし
37デフォルトの名無しさん (ワッチョイ 8bbb-Q5Cn)
2021/03/25(木) 15:14:45.90ID:mlbm7rgK0 Unityはやめといたほうがいいんじゃん?
ゲーム特有の定石が多い上にあまり公開されていないので、なかなかOOPを活かせるようなコードが書けるもんじゃない
ゲーム特有の定石が多い上にあまり公開されていないので、なかなかOOPを活かせるようなコードが書けるもんじゃない
38デフォルトの名無しさん (ワッチョイ f568-UUyU)
2021/03/26(金) 06:50:34.94ID:M+ibeJ+i0 なんか作るとき、ついつい無駄にインターフェース作ったり、クラスを継承させたりしたくなる。
後で使うかもって置いといても、結局、役立たずで無駄になったり。
後で使うかもって置いといても、結局、役立たずで無駄になったり。
39デフォルトの名無しさん (ラクッペペ MM96-3uWH)
2021/03/26(金) 08:06:06.50ID:kpMAymvOM YAGNI原則
40デフォルトの名無しさん (ワッチョイ b1b5-lMfL)
2021/03/26(金) 14:55:15.51ID:OgsXGrRW0 質問です。
'string[][]'と'string[*,*]の違いは何ですか?
List<string[]> lists = new List<string[]>();
を
string[,] = lists.ToArray();
で二次元配列にしようとすると、
CS0029: Cannot implicitly convert type 'string[][]' to 'string[*,*]'
とエラーが出て困っています。
'string[][]'と'string[*,*]の違いは何ですか?
List<string[]> lists = new List<string[]>();
を
string[,] = lists.ToArray();
で二次元配列にしようとすると、
CS0029: Cannot implicitly convert type 'string[][]' to 'string[*,*]'
とエラーが出て困っています。
41デフォルトの名無しさん (ブーイモ MMa6-OegW)
2021/03/26(金) 14:58:50.52ID:jmlXC9C1M [][]は配列の配列
[,]は二次元配列
[,]は二次元配列
42デフォルトの名無しさん (ワッチョイ b1b5-lMfL)
2021/03/26(金) 15:04:21.89ID:OgsXGrRW043デフォルトの名無しさん (エアペラ SD95-H12r)
2021/03/27(土) 08:26:55.12ID:8mKnzpiaD44デフォルトの名無しさん (ワッチョイ 6924-Q1TI)
2021/03/28(日) 08:30:33.61ID:w0FgUNmI0 >>38
「いつか使うだろう」という動機で作る機能の9割は結局使われないという法則があってだな
「いつか使うだろう」という動機で作る機能の9割は結局使われないという法則があってだな
45デフォルトの名無しさん (ワッチョイ 6502-12p/)
2021/03/28(日) 10:40:20.81ID:i/QSKAGe0 でも、ついでだし作っとくか、で作ったやつがその後のバグ対に効果大なこともあったな。結構。
「起こる可能性のあることはいつか必ず起こる」ってのはマーフィーの法則だっけ。
アタマの片隅にでも置いておくと、後で助かることがままある。
「起こる可能性のあることはいつか必ず起こる」ってのはマーフィーの法則だっけ。
アタマの片隅にでも置いておくと、後で助かることがままある。
46デフォルトの名無しさん (ワッチョイ b662-GHqT)
2021/03/28(日) 11:33:59.11ID:wZjOpvsr0 一人で作ってるならいいんだけど別の人が対応する時に混乱させるだけなことが多いからな
チーム開発では起こらないことを無駄に考えてしまうのはよくないって場面の方が多い
チーム開発では起こらないことを無駄に考えてしまうのはよくないって場面の方が多い
47デフォルトの名無しさん (テテンテンテン MM96-e9+l)
2021/03/28(日) 12:40:48.84ID:UWp6RwLlM48デフォルトの名無しさん (ワッチョイ f6de-q+au)
2021/03/28(日) 13:48:24.42ID:mEH1r/L6049デフォルトの名無しさん (アウアウウー Sacd-1mGO)
2021/03/28(日) 14:10:23.36ID:maSv/WgVa 必要になると思って書いておいたプロパティやメソッドが結局まったく使われなかった、
っていうのはないことはないと思う。
YAGNIって普通はこういう話じゃないの?
>>38が言ってるような要らんInterfaceや要らん継承関係を作ってしまうって
YAGNIとちょっと違う気がするし、そもそも普通はあんまりやらん気がするなあ。
っていうのはないことはないと思う。
YAGNIって普通はこういう話じゃないの?
>>38が言ってるような要らんInterfaceや要らん継承関係を作ってしまうって
YAGNIとちょっと違う気がするし、そもそも普通はあんまりやらん気がするなあ。
50デフォルトの名無しさん (ワントンキン MM46-e9+l)
2021/03/28(日) 14:18:03.89ID:YWsxET0EM コードレベルで呼び出されないのと運用上使用されないのは別問題だよ
前者はほぼ例外なく無駄無価値無意味なんで、俺がコードレビューするなら基本的には消させる
前者はほぼ例外なく無駄無価値無意味なんで、俺がコードレビューするなら基本的には消させる
51デフォルトの名無しさん (ワッチョイ 2578-UUyU)
2021/03/28(日) 20:04:07.22ID:GjVtou7p0 スレチ
議論は議論スレでどうぞ
議論は議論スレでどうぞ
52デフォルトの名無しさん (ワッチョイ b1b5-lMfL)
2021/03/28(日) 20:15:57.09ID:AfIP7Kkq0 >>44-50
横から便乗で質問ですけど、
「いつか使うだろう」とインターフェースや継承関係を作っておく自体は推奨されることですか?
例えば、インターフェースや継承関係が無くても、直付けで作れてしまう訳じゃないですか。
むしろ、そっちの方が楽(というか、直付けでしか作れない人もいますし)。
ただし、物事が複雑化してきたときに、インターフェースや継承関係があると拡張しやすい。
これって上級者なら、(どんなに小さいプログラムだろうが)常にインターフェースや継承関係を作った方がいいのか、
それとも、ケースバイケースで「このぐらい複雑ならインターフェースや継承関係が要る」という判断基準に則って作った方がいいんですか?
横から便乗で質問ですけど、
「いつか使うだろう」とインターフェースや継承関係を作っておく自体は推奨されることですか?
例えば、インターフェースや継承関係が無くても、直付けで作れてしまう訳じゃないですか。
むしろ、そっちの方が楽(というか、直付けでしか作れない人もいますし)。
ただし、物事が複雑化してきたときに、インターフェースや継承関係があると拡張しやすい。
これって上級者なら、(どんなに小さいプログラムだろうが)常にインターフェースや継承関係を作った方がいいのか、
それとも、ケースバイケースで「このぐらい複雑ならインターフェースや継承関係が要る」という判断基準に則って作った方がいいんですか?
53デフォルトの名無しさん (ワッチョイ b1b5-lMfL)
2021/03/28(日) 20:16:36.58ID:AfIP7Kkq054デフォルトの名無しさん (アウアウウー Sacd-1mGO)
2021/03/28(日) 20:49:47.68ID:qVTIlpQ/a55デフォルトの名無しさん (ワッチョイ 328b-UUyU)
2021/03/29(月) 18:40:55.68ID:dJ0caBH40 Seleniumで closeとquitをセットで使ってましたが
quitさへ使えばプロセス残りも防げて万能という認識で良いでしょうか?
quitさへ使えばプロセス残りも防げて万能という認識で良いでしょうか?
56デフォルトの名無しさん (ワッチョイ 328b-UUyU)
2021/03/29(月) 18:41:48.60ID:dJ0caBH40 というのもなぜか、最近アップデートされたChromeドライバーのバグなのか
driver.close();を実行するとやたらと時間が掛かる様になり、ストレスを感じています。
driver.close();を実行するとやたらと時間が掛かる様になり、ストレスを感じています。
57デフォルトの名無しさん (スププ Sdb2-uiCP)
2021/03/31(水) 11:53:07.69ID:/skdgMDzd 演算子のオーバーロードを定義したクラスを継承してそのクラスのオブジェクト同士を足したりしたいんだけど、
継承した子クラス同士足し算してもオーバーロードしてるのが親クラス返してエラー出る…
なんとかなりませんか…
継承した子クラス同士足し算してもオーバーロードしてるのが親クラス返してエラー出る…
なんとかなりませんか…
58デフォルトの名無しさん (エアペラ SD89-H12r)
2021/03/31(水) 12:51:53.66ID:rGwDN8jFD コーのせられる?
59デフォルトの名無しさん (アウアウウー Sacd-1mGO)
2021/03/31(水) 14:43:21.83ID:FnhDsC03a60デフォルトの名無しさん (スププ Sdb2-uiCP)
2021/03/31(水) 17:43:40.43ID:/skdgMDzd61デフォルトの名無しさん (アウアウエー Sada-OegW)
2021/03/31(水) 18:12:45.92ID:k0t0X50Ga 子クラスどうしの演算子を新しく定義する
62デフォルトの名無しさん (ワッチョイ d573-XUMB)
2021/04/02(金) 02:49:16.07ID:4F6/LV520 いやいやゲームはメチャクチャOOPに向いてる。
ゲームエンジンがプロパティペインで物を制作管理していくのが中心になってるってことは
全体としてOOPと相性がいい。
そらそうよ、鋳型と各オブジェクト、その相互作用、隠蔽やインターフェース、
まさにオブジェクト指向言語の基礎サンプルやエクササイズが綺麗にヒットしやすいのがゲームよ。
ゲームエンジンがプロパティペインで物を制作管理していくのが中心になってるってことは
全体としてOOPと相性がいい。
そらそうよ、鋳型と各オブジェクト、その相互作用、隠蔽やインターフェース、
まさにオブジェクト指向言語の基礎サンプルやエクササイズが綺麗にヒットしやすいのがゲームよ。
63デフォルトの名無しさん (ワッチョイ 4ba7-WZCG)
2021/04/02(金) 03:35:33.76ID:p2YnI9xf0 >>62
エアプ乙
ゲームはオブジェクト同士の関連処理が一番多い
それを綺麗に書く処理はオブジェクト指向言語には無い
これを議論するといっつも言語機能に用意されてないもんだから色んなワンダーランドがご披露されるだけのクソ展開になる
いいか
そんなもんないんだ
お前がどう書くかなんて俺は興味ない
ただ言語の機能にない
それだけだ
エアプ乙
ゲームはオブジェクト同士の関連処理が一番多い
それを綺麗に書く処理はオブジェクト指向言語には無い
これを議論するといっつも言語機能に用意されてないもんだから色んなワンダーランドがご披露されるだけのクソ展開になる
いいか
そんなもんないんだ
お前がどう書くかなんて俺は興味ない
ただ言語の機能にない
それだけだ
64デフォルトの名無しさん (オッペケ Sr01-26+2)
2021/04/02(金) 16:59:32.21ID:kD/N/lyPr たんに解がひとつではないだけの話じゃね?
そんなの普通のGUIアプリ一つ取ってもそうじゃん
そんなの普通のGUIアプリ一つ取ってもそうじゃん
65デフォルトの名無しさん (ブーイモ MMa9-ehU2)
2021/04/02(金) 17:30:53.01ID:bweg+I/EM 文面見ればオブジェクト指向を理解して言ってるのかどうかわかるやろ
66デフォルトの名無しさん (ワッチョイ 0d68-0pr0)
2021/04/02(金) 21:13:27.05ID:qd7mj8LF0 議論スレに行った方が良いのか判らないけど、
俺も初心者なんだけどC#の機能を試したくってさ。
基本キャラからキャラ種類別にクラス継承させたりして楽しんでたよ。
でもゴリゴリにスペックを切り詰めるようなゲームだと、そんな余裕はないのかもな。
俺も初心者なんだけどC#の機能を試したくってさ。
基本キャラからキャラ種類別にクラス継承させたりして楽しんでたよ。
でもゴリゴリにスペックを切り詰めるようなゲームだと、そんな余裕はないのかもな。
67デフォルトの名無しさん (エアペラ SD2b-/UL4)
2021/04/02(金) 21:22:46.60ID:nM9RZYDRD ゴリゴリにスペック使うような案件にC#使うとは思えないけど
68デフォルトの名無しさん (ワッチョイ a3e6-JnQU)
2021/04/02(金) 21:33:37.08ID:iQ+JaQcP0 日本産のスマホゲーと大陸産のスマホゲーぐらいの速度差は出るだろうな
69デフォルトの名無しさん (ワッチョイ 2d02-xz58)
2021/04/02(金) 21:37:00.93ID:L8b3h71w0 オブジェクト同士の関連処理を綺麗に書く機能、って具体的にどんな感じの物なのか興味はある。
70デフォルトの名無しさん (ワッチョイ 0d7b-1jBW)
2021/04/02(金) 21:37:57.13ID:JUK+seey0 ここ「初心者の質問スレ」で「初心者の雑談スレ」じゃないんだけどテンプレ読めないの?
マ板でやれ
マ板でやれ
71デフォルトの名無しさん (ワッチョイ 6524-dLXn)
2021/04/02(金) 23:15:46.39ID:jbXSiLa80 >>68
中華の大手どころってマルチプラットフォーム対応なソシャゲもUnityとか使わずにそもそも自前エンジンで開発してね?
中華の大手どころってマルチプラットフォーム対応なソシャゲもUnityとか使わずにそもそも自前エンジンで開発してね?
72デフォルトの名無しさん (ワッチョイ 1dae-lQ1w)
2021/04/03(土) 00:11:57.23ID:nqPdKYBV0 むしろUnityじゃないの見たことない
73デフォルトの名無しさん (アウアウウー Sae9-p1/t)
2021/04/03(土) 01:51:35.91ID:2NRf1R7da >>69
まあ言語機能云々は意味不明に聞こえるねw
前も書いたけど、ゲームの場合Mediator的な装置を用意すべき場面でも
目に見えるオブジェクトに引きずられて変な設計してしまいがちだと
いう意味なら分からんでもない。
バブルボブル(おっさんにしか分からんかも)で泡の相互作用を
Bubbleクラスに無理に実装したらたぶんハマるよね。
まあ言語機能云々は意味不明に聞こえるねw
前も書いたけど、ゲームの場合Mediator的な装置を用意すべき場面でも
目に見えるオブジェクトに引きずられて変な設計してしまいがちだと
いう意味なら分からんでもない。
バブルボブル(おっさんにしか分からんかも)で泡の相互作用を
Bubbleクラスに無理に実装したらたぶんハマるよね。
74デフォルトの名無しさん (ワッチョイ 55b5-vyem)
2021/04/03(土) 02:58:34.81ID:RiNFSwHX0 ちきしょー、分かっちまった
75デフォルトの名無しさん (ワッチョイ 8d2d-kjVL)
2021/04/03(土) 04:13:43.36ID:a3PJiZ4L0 linq便利だなーって使いまくってたけど
最近自分が手続き型の思考をしなくなってきたことが怖くなってきた
これプログラミング能力が低下するのでは..
最近自分が手続き型の思考をしなくなってきたことが怖くなってきた
これプログラミング能力が低下するのでは..
76デフォルトの名無しさん (スフッ Sd43-+5Lz)
2021/04/03(土) 10:48:17.75ID:UQC8gxiad >>75
でもLinqって古くから有る技術の延長にある気がする。
SelectしてWhereで選んでSortしてっていうのは、コマンドプロンプトでパイプリダイレクションとかいう手法に似てる。
ラムダ式とかは新しいのかな。数学の世界とかそういう所では古いのか。
でもLinqって古くから有る技術の延長にある気がする。
SelectしてWhereで選んでSortしてっていうのは、コマンドプロンプトでパイプリダイレクションとかいう手法に似てる。
ラムダ式とかは新しいのかな。数学の世界とかそういう所では古いのか。
77デフォルトの名無しさん (ワッチョイ 8d33-eEFg)
2021/04/03(土) 11:15:26.55ID:vVgJyrul0 やっててよかったラムダ式。
やらなきゃよかった苦悶式。
やらなきゃよかった苦悶式。
78デフォルトの名無しさん (ワッチョイ cbda-2D+M)
2021/04/03(土) 12:27:40.46ID:4GR7Zrkb0 >>76
君はLISPを何だと思っているのかね?
君はLISPを何だと思っているのかね?
79デフォルトの名無しさん (ワッチョイ 5d7d-Cvkr)
2021/04/03(土) 12:41:49.44ID:msrmgqC70 そうか、C#だとメソッドチェーンすらも一般的ではないのか…
いやそんな馬鹿な
Unity制御スクリプトとしての利用が多いから?
いいや雑談だし
いやそんな馬鹿な
Unity制御スクリプトとしての利用が多いから?
いいや雑談だし
80デフォルトの名無しさん (ブーイモ MM6b-VtYg)
2021/04/03(土) 12:56:50.93ID:49uAy5SrM81デフォルトの名無しさん (ワッチョイ e54f-lQ1w)
2021/04/03(土) 13:57:02.33ID:PWpcDrEf0 いきなりメソッドチェーンとか持ち出したのはLinqの話に絡めてか?
全然違うものだと思うが。
全然違うものだと思うが。
82デフォルトの名無しさん (ワッチョイ e501-26+2)
2021/04/03(土) 18:55:38.38ID:a2otFyvK0 Linqのクエリ式自体はメソッドチェーンのシンタックスシュガーじゃん
83デフォルトの名無しさん (アウアウウー Sae9-p1/t)
2021/04/03(土) 19:11:52.27ID:CmPk+yxPa メソッドチェーンの元々の意味はvoidのメソッドをthisを返すようにして....
ってことだったんだと思うよ。
個人的にはこういう重箱の隅を突く話は好きじゃないけど
ってことだったんだと思うよ。
個人的にはこういう重箱の隅を突く話は好きじゃないけど
84デフォルトの名無しさん (ワッチョイ 2d02-xz58)
2021/04/04(日) 13:52:07.93ID:U9Ytphde0 >>73
純粋に、自分が知らない有用な書き方があるなら知りたいとは思うんだよな。
別スレの LINQ がらみの話題もやるかどうかは置いておいて勉強にはなったし。
もしくだんの人が出てきてくれて講釈してくれるなら専用のスレぐらいは立てる。
純粋に、自分が知らない有用な書き方があるなら知りたいとは思うんだよな。
別スレの LINQ がらみの話題もやるかどうかは置いておいて勉強にはなったし。
もしくだんの人が出てきてくれて講釈してくれるなら専用のスレぐらいは立てる。
85デフォルトの名無しさん (ワッチョイ 2b02-kjVL)
2021/04/04(日) 17:58:30.84ID:a8juFvNn0 初歩的な事かもしれませんが教えて下さい。
以下のような独自クラス「Group」のリストがあります。
このリストをクラスのAgeListをキーにGroupByしたいのですが上手くグループ化できません。
どうすれば良いでしょうか。
public class Group{
/// グループID
public int Id {get; set;}
/// グループ名
public int GroupName {get; set;}
/// グループ所属の年齢一覧
public List<int> AgeList {get; set;}
public Member()
{
List = new List();
}
}
以下のような独自クラス「Group」のリストがあります。
このリストをクラスのAgeListをキーにGroupByしたいのですが上手くグループ化できません。
どうすれば良いでしょうか。
public class Group{
/// グループID
public int Id {get; set;}
/// グループ名
public int GroupName {get; set;}
/// グループ所属の年齢一覧
public List<int> AgeList {get; set;}
public Member()
{
List = new List();
}
}
86デフォルトの名無しさん (ワントンキン MMa3-7UwS)
2021/04/04(日) 19:15:49.58ID:LnRN74zvM87デフォルトの名無しさん (ワッチョイ ad78-0pr0)
2021/04/04(日) 19:55:19.53ID:m/N7RFml0 >>85
最低限ビルドできるコードを例に挙げろよ
最低限ビルドできるコードを例に挙げろよ
88デフォルトの名無しさん (ワッチョイ b501-5QI3)
2021/04/04(日) 19:59:05.44ID:gm8Ka2TU0 そもそもの設計ヤバない?AgeはMemberに持つのでは?
89デフォルトの名無しさん (ブーイモ MM6b-ehU2)
2021/04/04(日) 20:15:49.42ID:+2DTDHawM デフォルトで使われる比較関数じゃ欲しい結果が得られないからGroupByに独自の比較関数を渡すか、Groupクラスに比較方法を定義しておくかのどちらか
90デフォルトの名無しさん (ブーイモ MM6b-ehU2)
2021/04/04(日) 20:17:26.34ID:+2DTDHawM 新卒研修の課題とかだろうから設計にツッコミいれてもしょうがないような
91デフォルトの名無しさん (ワッチョイ a37c-6/vn)
2021/04/04(日) 20:45:41.30ID:C0fdEpC00 初心者以前の話だよな
何がしたいか位は分かるように書けよと思う
何がしたいか位は分かるように書けよと思う
92デフォルトの名無しさん (アウアウウー Sae9-yx92)
2021/04/04(日) 20:52:52.48ID:ufNVz0O6a 何がしたいかはなんとなくわかるだろ
93デフォルトの名無しさん (ワッチョイ a37c-6/vn)
2021/04/04(日) 20:55:57.89ID:C0fdEpC0094デフォルトの名無しさん (テテンテンテン MM4b-/elG)
2021/04/04(日) 21:09:17.93ID:ghBYdtOLM95デフォルトの名無しさん (ワッチョイ 1bda-UCZ0)
2021/04/04(日) 21:13:12.33ID:xvT8M2vo0 俺はこういう場合、独自解釈して好きなように作る。
今回ならAgeListをソートしてカンマ区切りの文字列にして、をれをキーにする。
でGroupByだな。
過去この独自解釈が5割くらいそのまま仕様になってる
今回ならAgeListをソートしてカンマ区切りの文字列にして、をれをキーにする。
でGroupByだな。
過去この独自解釈が5割くらいそのまま仕様になってる
96デフォルトの名無しさん (アウアウウー Sae9-yx92)
2021/04/04(日) 21:16:41.13ID:jr3tMa1na >>93
>独自クラス「Group」のリスト
>このリストをクラスのAgeListをキーにGroupByしたい
List<Group> list = new List<Group>();
// なんか処理
list.Groupby(x => x.AgeList)
ってしたいって理解したんだけど違うんかな
宣言でそもそも間違ってるのは知らん
>独自クラス「Group」のリスト
>このリストをクラスのAgeListをキーにGroupByしたい
List<Group> list = new List<Group>();
// なんか処理
list.Groupby(x => x.AgeList)
ってしたいって理解したんだけど違うんかな
宣言でそもそも間違ってるのは知らん
97デフォルトの名無しさん (ワッチョイ 552c-s+Uo)
2021/04/04(日) 22:12:27.02ID:0QnJQanX0 Ruby なら、こういう感じ
members = [ {id: 1, age: 30}, {id: 2, age: 20}, {id: 3, age: 50} ]
p members.sort_by{ |member| member[ :age ] }
出力
[{:id=>2, :age=>20}, {:id=>1, :age=>30}, {:id=>3, :age=>50}]
members = [ {id: 1, age: 30}, {id: 2, age: 20}, {id: 3, age: 50} ]
p members.sort_by{ |member| member[ :age ] }
出力
[{:id=>2, :age=>20}, {:id=>1, :age=>30}, {:id=>3, :age=>50}]
98デフォルトの名無しさん (ラクッペペ MM4b-M4Sc)
2021/04/04(日) 22:18:00.59ID:LUDq5H1sM >>97
C#なら?
C#なら?
99デフォルトの名無しさん (ワッチョイ cbda-2D+M)
2021/04/04(日) 22:23:09.43ID:ciXsbyqc0 >>97
APLなら?
APLなら?
100デフォルトの名無しさん (ワッチョイ 55b5-vyem)
2021/04/04(日) 22:32:47.74ID:glgnW2pm0 そんな議論はさておき、俺様が>>100を掻っ攫う
101デフォルトの名無しさん (ワッチョイ a37c-0pr0)
2021/04/04(日) 22:38:41.33ID:C0fdEpC00 Rubyガイジは無視して同じコードをちょっと書いてみた
https://paiza.io/projects/XRdHMEMPrv4_lIhlB8WYuw
https://paiza.io/projects/XRdHMEMPrv4_lIhlB8WYuw
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★6 [BFU★]
- 【サッカー】U-17W杯 日本代表、無念のベスト8敗退… チャンスは多く作ったが仕留め切れず オーストリアに0-1で敗戦 [冬月記者★]
- 【千葉】コンビニに尿入りペットボトル並べた疑い、26歳男「むしゃくしゃして」…購入した客が飲もうとしたところ臭いに違和感 [ぐれ★]
- 植田日銀総裁 「円安進行が物価高を起こしている」 ★4 [お断り★]
- 中国官製報道「日本経済はもう持たない」にネット民ツッコミ「ニュースだけ見てたら日本はもう百回くらい爆発してる」 [1ゲットロボ★]
- 外国人観光客に「ランチタイム来店遠慮して」富士そば店舗の貼り紙が波紋、運営会社は撤去指示 [七波羅探題★]
