位图未解析为函数变量

本文关键字:函数 变量 位图 | 更新日期: 2023-09-27 18:14:57

我得到了一些简单的代码从5位图中获得平均颜色。

    private Bitmap AVG5Bitmaps(Bitmap a, Bitmap b, Bitmap c, Bitmap d, Bitmap e)
    {
        Bitmap result = new Bitmap(c);
        for (int x = 0; x < result.Width; x++) 
        {
            for (int y = 0; y < result.Height; y++) 
            {
                int r = (
                        (int)a.GetPixel(x, y).R + 
                        (int)b.GetPixel(x, y).R +
                        (int)c.GetPixel(x, y).R +
                        (int)d.GetPixel(x, y).R +
                        (int)e.GetPixel(x, y).R) / 5;
                int g = (
                         (int)a.GetPixel(x, y).G +
                         (int)b.GetPixel(x, y).G +
                         (int)c.GetPixel(x, y).G +
                         (int)d.GetPixel(x, y).G +
                         (int)e.GetPixel(x, y).G) / 5;
                int b =  (
                         (int)a.GetPixel(x, y).B +
                         (int)b.GetPixel(x, y).B +
                         (int)c.GetPixel(x, y).B +
                         (int)d.GetPixel(x, y).B +
                         (int)e.GetPixel(x, y).B) / 5;
                  result.SetPixel(x,y,Color.FromArgb(r,g,b))
            }
        }
       return result; 
    }

奇怪的是a.GetPixel(x, y).R被识别了,而b.GetPixel(x, y).R给出了一个错误:

不能在声明局部变量b之前使用

b甚至不被视为位图对象?我不明白,为什么代码与a一起工作,而不是与b一起工作。这是Visual Studio 2010的bug吗?

在请求时用完整的函数代码更新了问题

位图未解析为函数变量

你的台词:

int b = 

隐藏了参数b,因此您试图访问该变量的赋值。这就是误差。重命名变量