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

Member reference base type is not a structure or union

我的一个 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) );

错误信息是:

"Member reference base type sf::Image(sf::Image) is not a structure or union".

有谁知道问题出在哪里?

谢谢!

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

由此Documentationsf::Image有一个复制构造函数:

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

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

所以第一行:

Image bwImage(Image);

应该是:

Image bwImage(image);