| ■22392 / ) |
Re[1]: 外部ファイルのアクセッサが値を保持しない |
□投稿者/ 渋木宏明(ひどり) (828回)-(2008/07/22(Tue) 23:11:56)
|
> 何がいけないんでしょうか?教えてください。
もっそ基本的なトコが理解できてないようです。
> コンストラクタ > { > Csankaku sankaku; > CPoint point = ( 100, 200 ); > sankaku.setpoint( point ); > }
と
> OnDraw( ) > { > Csankaku sankaku; > CPoint point = sankaku.getpoint(); > }
において、Csankaku 型の変数 sankaku はローカル変数として宣言されています。
ローカル変数は、その変数を宣言したスコープ内でのみ有効です。
コンストラクタと OnDraw() の2か所で同名の Csankaku 型の変数を宣言したとしても、両者は「同じ型」という性質こそ共通ですが、モノとしては全くの別物です。
コンストラクタ内で宣言した sankaku が内包する値が、OnDraw() で宣言した sankaku にまで持ち越されることはありません。
# 方法がないわけではありませんが、原則として
でわどうするか、というと、この場合は xxxxView クラスのメンバ変数として Csankaku sankaku を配置するのが素直な解決のように思います。
|
|