静的、動的の基準は? – 固定ページ 2 – プログラミング – Home

通知
すべてクリア

[解決済] 静的、動的の基準は?

固定ページ 2 / 2

maru
 maru
(@maru)
ゲスト
結合: 17年前
投稿: 358
 

> 最初から特定のメモリアドレスにいてはまずいのでしょうか?
ということは静的/動的とはアドレスが変わるかどうかをいっているの?

とすると、επιστημη さんの
> 関数/変数が クラスに属するか/インスタンスに属するか です
は話が難しすぎるでしょうね。

変数が「最初から特定のメモリアドレス」にいるということはプログラムが動作して
いる間ずっと必要な変数であり、その変数の寿命がプログラムと同じであるというこ
とです。
しかし、変数が「そのプログラムで必要で且つ、サイズがあらかじめ、予測できる
もの」であってもプログラムが動作している間ずっと必要ではないのであれば、
つまり変数の寿命とプログラムの寿命が異なっているのであれば、必要になったとき
に実体化したほうがメモリを有効に使用できます。そして、ほとんどの場合、プログ
ラムの寿命と変数の寿命は異なっているんのです。


返信引用
maru
 maru
(@maru)
ゲスト
結合: 17年前
投稿: 358
 

あっちゃー!

文章を考えている間に、επιστημηさんの別の回答がでてた。
まあ、補足ということで。


返信引用
wclrp ( 'o')
 wclrp ( 'o')
(@wclrp ( 'o'))
ゲスト
結合: 18年前
投稿: 287
 

質問が
>C++ およびjava において、クラス、メンバー関数、メソッド、メンバ

>ststic とは、プログラムが開始され終了するまで、常に同じアドレスに存在するもの
ってなっているから
回答が難しいな。
メンバー関数はプログラムコードであってデータじゃないから
アドレス変わるとかnewするとかヒープに置くとか無いから。
それとJavaってクラスのインスタンスはnewするものでしょ。

-------------------------------------------------------

ところでインスタンスシエードって何?


返信引用
tetrapod
 tetrapod
(@tetrapod)
ゲスト
結合: 21年前
投稿: 830
 

instantiate ぢゃないの?まあどうみてもシエードとは発音せんけど。
http://ejje.weblio.jp/content/instantiate

一般的でない俺俺独自用語が使われているので本題に対しては返信保留中


返信引用
PATIO
(@patio)
Famed Member
結合: 3年前
投稿: 2660
 

もう解決になっちゃってますけれど、

メモリ上の配置の話とクラスとかオブジェクト指向の概念をごっちゃにしているから
話がややこしくなっていると思います。
オブジェクト指向の概念的な話をする時は一旦メモリ上の話は置いておいて良いと思います。
メモリ上のどう配置されるかはコンパイラの実装に任せて概念的な部分の理解に集中した
方が良いかなと。
クラスとの関連でstaticの話をするのであれば、メモリ上の配置に関しては結果的な話何
じゃないですかねぇ。
クラスとしてどう扱うのかとかそっちを理解されたほうが良いと思います。


返信引用
PATIO
(@patio)
Famed Member
結合: 3年前
投稿: 2660
 

クラスとしてどれだけ自然なモデルにできるか、
無理なく対象を表現できるかが問題になると思うので
メモリ上に配置しておくとかはコンパイラを通した結果でしかない
という気がしますね。この辺を気にしすぎると概念的な部分を
理解することを目的にしているのであれば、本来の目的から反れて
しまう事になります。概念は概念として理解して結果的に
それがメモリ上ではこうなっていると言う理解の方が良いのではないかなぁ。

犬と言うクラスに体色というメンバーがあったとして
犬それぞれで体色は違う可能性があるわけですから
アプリケーションでひとつのメンバーではアプリ内に存在する犬の
体色を犬毎に持てませんよね。
何匹の犬を扱うかが最初から分かっていれば固定で持つ事も出来ますが、
それってリーズナブルな実装と言えるでしょうか?
必要な分だけ犬クラスのインスタンスを作成した時にセットで管理できた方が
分かりやすいし、扱い安くないでしょうか。
そういう概念の方に目を向けて理解された方が良いと思います。


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

> 何匹の犬を扱うかが最初から分かっていれば固定で持つ事も出来ますが、
> それってリーズナブルな実装と言えるでしょうか?

最大101匹のわんちゃんが扱えるようにと最初っから101匹分の
わんちゃん用意しても、おかあさんが「1匹しかダメ!」って言うたら
残る100匹はみんな目が死んでることになるわけでぇ。


返信引用
固定ページ 2 / 2

返信する

投稿者名

投稿者メールアドレス

タイトル *

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