K.Maebashi's BBS 投稿フォーム
ハンドル名
件名
Link
>ありがとうございました。 > >[601]>どちらもpの型はchar**ではないでしょうか。 > >そうです。すごく初歩的なミスで はずかしですけど。 > > >[601]>ただし、p[n]を個別に解放したいとか、個別にサイズ変更(realloc)したいとかの >[601]>場合には(B)の方法は使えません。 > >[600]>なので、しょぼい仮想記憶 (というかスワップ機能) を持つOSだと問題が発生しえます。 > >わかりました。 >ソースのわかりやすさでも、機能性とかバグ回避の点でも >(B)が優れているとは言えないわけですね。 > > >[601]>ポインタ完全制覇をお持ちなら、「2.1 仮想アドレス」を参照してください。 > >[601]>ところで、閲覧したいメモリは仮想メモリでしょうか? 物理メモリでしょうか? > >仮想アドレスの章: はい、今 読んでみました。仮想メモリと物理メモリの話ですね。 >閲覧したいのは物理メモリです。仮想メモリもついでに見てみたいです。 > > >[600]>VC++ の IDE デバッガとか gdb とか、いろいろデバッガがありますね。 >[600]>わざわざ作るまでも無いような気がします。 > >あ~、なるほど。知りませんでした。 >とりあえず、デバッガを使ってみます。 > > >[600]>>上のプログラム(B)のときのメモリ開放は >[600]>>delete[] p[0]; >[600]>>delete[] p; >[600]>正解です。 > >やっぱり当然ですね。 >でも、うっかり次のように書いてしてしまいそうで >やっぱり(B)はあんまり良いコーディングではないですね > >for(y=0;y<yM;y++)delete[] p[y]; >delete[] p; > > >以上 参考になりました。ありがとうございました。 > >
spamよけのため、ここに「ほげぴよ」と入力してください。
削除パスワード :
クリック!