次のコードを使用して、画面にいくつかの画像を描画するプログラムがあります。
ImageViewer : Image {
public:
ImageViewer(string path){
}
void drawImage(){
Image::draw(widthHeight);
}
private:
Rectangle widthHeight;
}
さて、私のメインプログラムでは、次の方法でイメージビューアーを使用しています-
string imgP = "someImage.png";
ImageViewer *imgV = new ImageViewer(imgP);
キーを押すと、画像のパスを変更する必要があるため、次のようにします
。
私のアプリケーションは正常に動作していますが、画面に画像が表示されなくなり、その理由を突き止めようとしています。質問したいことの 1 つは、ポインターについてです。ポインター
に a を代入するnew ImageViewer(newImagePath)
とimgV
、前のimgV
値はどこに行くのでしょうか。(それは自己破壊ですか、それとも手動で行う必要がありますか?)
画像が表示されない可能性があるため、グラゲ値またはそのようなものを取得しているかどうかはわかりませんが、これが考えられる理由であるかどうかを確認したかっただけです。(画像内の描画およびその他の関数の内部実装をまだチェックしています)