[過去ログ] C++相談室 part154 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
81: 2021/01/12(火)09:22 ID:XkW3hQXX(1) AAS
>>80
正しいかどうかは知らないし気にしないでいいと思うけど、
そういう場合はただのデータの集まりとして構造体(これもクラスの一種だけど)を使うだけでも簡単になるだろうね。
82(1): 2021/01/12(火)13:35 ID:lxco4c0J(1) AAS
個人的には、一度無理にでも概念(ウインドウとか表示とか作ってるソフトの主要な概念)をクラス名にして作ってみるといいとおも
やってるうちに慣れてくる
83: 2021/01/12(火)14:01 ID:V95G+u6D(2/3) AAS
そうだね
なにかを題材にしてオブジェクト指向やってみるのがいいと思う
でもウインドウはどうかなー そもそもUIツールキットをある程度知らないといけないし
GUIってオブジェクト指向らしからぬ部分も多いので
もっとビジネスロジック中心の題材がいいと思うよ たとえば掲示板システムとか
板には複数のスレがあって、各スレの中には複数のレスが並んでて、スレの書き込むメソッドでレスが1つ増えてーみたいな
84: 2021/01/12(火)15:56 ID:LUlB/OIG(1) AAS
>>4 >>11
. を再定義したいと思った
85(2): 2021/01/12(火)17:32 ID:+0XoTmdG(1) AAS
>>82
初歩的な質問なのですが、クラスってモノじゃなくて概念でも良いのでしょうか
つまり、歩く人のプログラムを作るとき、人というクラスが歩くというメソッドを持っていても良いし、歩くというクラスが一歩進むというメソッドを持っていても良いのでしょうか
言語の仕様上はもちろんどちらでも良いと思いますが、どちらの設計の方が筋が良いということはないと思って良いですか?
86: 2021/01/12(火)17:34 ID:fQCYjk84(1) AAS
ナントカ系の関数群みたいに相互に関連し合っているものを
暗黙じゃなく明確化するのがクラスだよ
87(2): 2021/01/12(火)17:38 ID:V95G+u6D(3/3) AAS
>>85
「歩く」をクラスにするよりは「歩ける」をインターフェースにしたらどうかな
人間クラスに「歩ける」インターフェースを実装することで「歩く」メソッドがあることを保証できる
対象ドメインをどのようにモデル化するかは状況や要件次第
88: 2021/01/12(火)19:05 ID:mPDSlMxM(1) AAS
メタファとして生き物がよく用いられるけどなんだかなあっていつも思う
89: 2021/01/12(火)19:50 ID:YNFRivpW(1/2) AAS
>>87
「歩け」インターフェースを定義したらインスタンスが歩ける想定であることは自明なのでは…
ちなメソッドは一般にオブジェクトの状態変化を引き起こすブツなので
命令型プログラミングの範疇であり命令形で命名すうるが正しい
※ 個人の感想です
90: 2021/01/12(火)19:52 ID:YNFRivpW(2/2) AAS
しかしインスタンスの生成というプロセスは関数型プログラミングから拝借しており、
命令型と関数型のいいとこ取りしようとして失敗した
classベースのオブジェクト志向は
91: 2021/01/12(火)19:58 ID:GTfU1r+6(1) AAS
何ベースのが成功なの?
92: 2021/01/13(水)09:25 ID:X1FbeZvQ(1) AAS
場合によっては歩くクラスもありだと思うよ。
ゲームで次の行動を一つずつ記憶させたい場合とか。
commandパターン、mementoパターンでググって
93(1): 2021/01/13(水)09:45 ID:D0cZCa+j(1/5) AAS
歩くということは、位置が変化する。
現在位置は人オブジェクトのプロパティなのか?
それでええのか?
94(1): 2021/01/13(水)11:14 ID:XODVGtfI(1) AAS
>>93
良くね?
>>87
インターフェースって継承される前提のものなんですよね?
どのクラスが「歩ける」を継承するんですか?
95: 2021/01/13(水)12:34 ID:QVnLWQ3q(1) AAS
>>85
数値化できるものなら何でもオーケーだ
歩行を数値化するにはN個の関節を持つM本の脚をパラメータとし時間経過ごとの接地点と関節の位置をジェネレータみたいに連続的に返すような設計が考えられる
96: 2021/01/13(水)13:12 ID:D0cZCa+j(2/5) AAS
>>94
じゃあ将棋の駒オブジェクトはプロパティとして位置を持っているのか?
97: 2021/01/13(水)14:09 ID:D0cZCa+j(3/5) AAS
俺の考えるOOシステムでは、駒オブジェクトは盤面オブジェクトやルールブックオブジェクトへの参照を持っいる。
駒オブジェクトへ前へ3移動とメッセージを送ると、駒オブジェクトはルールブックオブジェクトと盤面オブジェクトを用いて、移動可能であれば盤面オブジェクトへ自身を移動するようメッセージングする。
98: 2021/01/13(水)15:31 ID:Dg6tKq+M(1) AAS
intを継承してmyintクラスを作ることは可能ですか?
99: 2021/01/13(水)15:38 ID:CyYDkVRJ(1) AAS
システム次第でしょ。
もしも将棋の駒が自律歩行多脚戦車だったら、GPSシステムがすべての位置情報を管理してるなんておかしいし。
100: 2021/01/13(水)15:38 ID:D0cZCa+j(4/5) AAS
enum class なら可能。
上下前次1-新書関写板覧索設栞歴
あと 902 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.153s*