错误 C2248:'sf::NonCopyable::NonCopyable'
error C2248: 'sf::NonCopyable::NonCopyable'
我想在SFML库中创建简单的形状,但我无法弄清楚如何在多个文件中共享项目。我知道它看起来像什么,但我想知道为什么这不起作用
主文件:
#include <iostream>
#include <SFML/Graphics.hpp>
#include "Ball.cpp"
using namespace std;
using namespace sf;
int main()
{
RenderWindow win(VideoMode(800, 800), L"Rozdział 1");
while (win.isOpen())
{
win.clear(Color::White);
Event e;
while (win.pollEvent(e))
{
if (e.type == Event::Closed)
win.close();
}
Ball ball(win);
win.display();
}
}
和ball.cpp
#include <iostream>
#include <SFML/Graphics.hpp>
using namespace std;
using namespace sf;
class Ball
{
public: Ball(RenderWindow win)
{
CircleShape circle(50);
circle.setPosition(0, 0);
circle.setOutlineColor(Color::Red);
circle.setOutlineThickness(2);
Texture texture;
if (!texture.loadFromFile("textura.png"))
cerr << "Nie można załadować grafikin";
circle.setTexture(&texture);
win.draw(circle);
}
};
我必须创建这个球的列表,我是c++的新手,我只在Java中创建项目,但首先我想知道如何共享这个项目
按值传递sf::RenderWindow
,因此它尝试创建一个副本,但sf::RenderWindow
类不可复制,如错误消息所示。
通过引用传递,或者最好从sf::Drawable
派生Ball
类并实现draw()
函数。
相关文章:
- C2248 - 从 到 2 个继承
- 尝试从基类访问受保护的构造函数时出现错误 C2248
- 为什么我得到带有受保护静态成员的 C2248(无法访问的成员)
- MVSE12中出现错误C2248,std::thread
- 错误 C2248:"std::unique_ptr<_Ty>::unique_ptr":无法访问类"std::unique_ptr<_Ty>"中声明的私有成员
- 错误 C2248:无法访问类中声明的受保护成员
- Visual Studio 2012错误C2248在STD ::线程中
- 尝试初始化MFC CCcriticalSection时出现错误C2248
- 错误C2248:无法访问类中声明的私有成员,运算符=
- 在这种情况下,如何正确使用ifstream的引用?错误C2248
- 错误 C2248:'CObject::CObject':无法访问类 'CObject' afxwin.h 中声明的私有成员
- 错误C2248,这个错误是什么?我该如何修复它
- 错误 C2248:'std::promise<_Ty>::promise':无法访问类 'std::promise<_Ty>' 中声明的私有成员
- 使用Visual Studio 2012代码分析时出现错误C2248
- 再次出现错误 C2248
- 错误 C2248:无法访问在类中声明的私有成员,编译器行为异常
- 在 Visual Studio 2012 中编译启用 CLR C++项目时出现 C2248 错误
- 命名空间内出现错误 C2248 友元类
- 传递 CList 变量时会出现错误 C2248:"CObject::CObject":无法访问私有成员
- 错误 C2248:'sf::NonCopyable::NonCopyable'