表达式必须具有指向对象引用(C++)的指针

Expression must have a pointer-to-object reference (C++)

本文关键字:C++ 指针 对象引用 表达式      更新时间:2023-10-16

我正在开发一个引导程序,我收到了这个语法错误,不知道它意味着什么,如果有人能帮我,我将不胜感激。

bool DrawBitmap(BYTE Bitmap, int x, int y, int w, int h)
{
    for(int i=0;i<=w;i++)
        for(int i2=0;i2<=h; i2++)
        {
            setpixel(i+x,i2+h, Bitmap[(((w*i2)-1)+i)]);
        }
}

注意,错误发生在[(((w*i2)-1)+i)]中。

位图作为BYTE传递。可能它应该是一个BYTE指针。

试着这样定义你的函数:

bool DrawBitmap(BYTE *Bitmap, int x, int y, int w, int h)
{  
    for(int i=0;i<=w;i++)  
        for(int i2=0;i2<=h; i2++)  
        {  
            setpixel(i+x,i2+h, Bitmap[(((w*i2)-1)+i)]);
        }  
}