成员引用基类型不是结构或联合

时间:2017-05-05 19:19:23

标签: c++ sfml

我需要你的一个C ++项目的帮助。 那里有一个语义问题:

Image bwImage(Image);
bwImage.setPixel(i,j,Color::Color( image.getPixel(i,j).r * RED + image.getPixel(i,j).g*GREEN + image.getPixel(i,j).b*BLUE,
image.getPixel(i,j).r*RED + image.getPixel(i,j).g*GREEN + image.getPixel(i,j).b*BLUE,
image.getPixel(i,j).r*RED + image.getPixel(i,j).g*GREEN + image.getPixel(i,j).b*BLUE) );

错误消息是:

  

“成员引用基类型sf::Image(sf::Image)不是结构   或联合“。

有谁知道问题出在哪里?

谢谢!

1 个答案:

答案 0 :(得分:0)

C ++区分大小写。 Image是类名,而image是您实例化类的对象。

Documentation开始,sf::Image有一个复制构造函数:

sf::Image::Image    (   const Image &   Copy    )   

您可以使用该复制构造函数构建bwImage,并将引用传递给image对象。

所以第一行:

Image bwImage(Image);

应该是:

Image bwImage(image);