这不会分割故障,但是不会读取“原始”文件的像素。

Image Image::scaleUp(int numTimes) const
{
        Image newImage(width*numTimes, height*numTimes);
        newImage.createImage(width*numTimes, height*numTimes);

        for (int x = 0; x < width; x++) {
            for (int y = 0; y < height; y++) {
                for(int inner_x = 0; inner_x < numTimes; inner_x++){
                    for (int inner_y = 0; inner_y < numTimes; inner_y++){
                        newImage.pixelData[x*numTimes+inner_x][y*numTimes+inner_y] = pixelData[x][y];
                    }
                }
            }
        }
    return newImage;
}


现在已解决*(*除了我的图像以黑白显示)

最佳答案

C ++中的所有方法都有一个指向当前对象的指针,该对象名为this。您可以使用以下命令返回对该对象的引用:

 // Note that we're now returning a reference with Image&
 const Image& Image::scaleUp(int numTimes) const
 {
     // ...
     return *this;
 }

关于c++ - 放大图像,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2648908/

10-16 04:24