クラスの値の取得 – プログラミング – Home

通知
すべてクリア

[解決済] クラスの値の取得


Kon
 Kon
(@Kon)
ゲスト
結合: 19年前
投稿: 89
Topic starter  

Fruit というクラスの情報を、他のクラスの関数に配布する方法なのですが、
現在は、下記のような感じで、Sub.h にはポインタを渡しています。
データベースを扱う場合、このような方法は、スタンダードなのでしょうか?
それとも、Yaoya や super から直接値をとるのが良いのでしょうか?
スマートな方法が有りましたら、紹介して頂きたく、よろしくお願いします。
長文になって、申し訳ないです。

注)↓は略して書いているので動作確認はしていません。
Fruit.h-----------------------
public ref class Fruit {
public:
int Apple;
int Grape;
};-------------------------------
Controller.h--------------------
public ref class Cont{
public:
Fruit^ fru_cont;
public: System::Void GetFruit(){
fru_cont -> Apple = 100;
fru_cont -> Grape = 200;
}
};-------------------------------
main.h-------------------------
public ref class main{
public: System::Void Kouri(){
Cont cont;
Sub sub;
Fruit fru;
int uriage;

fru = cont -> fru_cont;

sub.Yaoya(&uriage, fru);
sub.super(&uriage, fru);
}
};-------------------------------
Sub.h-------------------------------
class Sub {
Void Yaoya(int *uriage, Fruit^ fru)
{
*uriage = *uriage + fru->Apple * 10;
*uriage = *uriage + fru->Grape * 5;
}
Void super(int *uriage, Fruit^ fru)
{
*uriage = *uriage + fru->Apple * 20;
*uriage = *uriage + fru->Grape * 5;
}
};-------------------------------


引用未解決
トピックタグ
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 22年前
投稿: 1301
 

あなたの頭の中(設計書)では、Fruit,Cont,Subはそれぞれ何をモデル化したものです
か?


返信引用
Kon
 Kon
(@Kon)
ゲスト
結合: 19年前
投稿: 89
Topic starter  

すみません。書き忘れました。

PCはWinXP、Visual C++ 2005 Express Edition を使用しています。
Windowsフォームアプリケーション でプロジェクトを作成しています。

よろしくお願いします。


返信引用
Kon
 Kon
(@Kon)
ゲスト
結合: 19年前
投稿: 89
Topic starter  

επιστημη さん、いつもありがとうございます。m(_ _)m

Contというのは実際はUIで、ユーザーからの値の出入りを受け付ける窓口。
Subは、その値をもらって、色々処理をする関数の集まりです。
Fruitは、値の器かな・・・。

こんな説明で、聞かれたことに答えてますか?


返信引用
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 22年前
投稿: 1301
 

えーと、Cont(UI)とSub(Processes)との間で
Fruit(Value-container)を行き来させるようなイメージ
でしょうか。
なんにせよ、そのイメージと実装との間に大きな食い違いが
なければそれでいいと思いますけども。


返信引用
Kon
 Kon
(@Kon)
ゲスト
結合: 19年前
投稿: 89
Topic starter  

Subの中では、Fruitの内容を変化させないので、
行き来というほど双方向にやりとりしない感じですが、
そんなイメージです。

どの関数の引数にも Fruit^ fru とありますし、
Sub の階層が、深くなってきたので、
ちょっとまどろっこしいかなと思ったのです。


返信引用
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 22年前
投稿: 1301
 

> どの関数の引数にも Fruit^ fru とありますし、
> Sub の階層が、深くなってきたので、
> ちょっとまどろっこしいかなと思ったのです。

その「まどろっこしさ」を説明してくれんと...


返信引用
Kon
 Kon
(@Kon)
ゲスト
結合: 19年前
投稿: 89
Topic starter  

επιστημη さんありがとうございます。
レスが遅くなって、申し訳ありません。

う~ん。うまく言えないのですが、
Fruit(Value-container)は、変化しない値なので、
引数で値を引っ張り回すような感覚に
なんだか違和感を感じたのです。
ですので、他にスタンダードな方法があればと思って、お尋ねしました。

まどろっこしいと思うのは、私の感覚であって、
皆さんが同様に、感じるワケではないんですよね。
引数で持っていく方法が、トリッキーではないのなら、
プログラム自体は、上記の記述でうまく行きそうな感じなので、
このままの状態で進めていこうと思います。

いつもご親切して頂き、感謝しております。
どうもありがとうございました。m(_ _)m


返信引用
Kon
 Kon
(@Kon)
ゲスト
結合: 19年前
投稿: 89
Topic starter  

チェック忘れました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました