- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 C++ 的新手,所以请放轻松。
我正在尝试使用 sfml 创建 RenderWindow。然后,在创建播放器时,该播放器关联的“窗口”对象被设置为先前创建的 RenderWindow。我的目的是能够从播放器对象运行窗口方法,例如 window.draw(),即:
player::drawSprite() {
window.draw(sprite);
}
但是,我遇到了错误:
error: use of deleted function ‘sf::RenderWindow& sf::RenderWindow::operator=(const sf::RenderWindow&)’
window = win;
^
在错误日志的更下方,我还看到:
error: initializing argument 1 of ‘Player::Player(sf::RenderWindow)’
Player(sf::RenderWindow win)
^
我的代码(省略了与问题无关的任何内容)如下:
#include <SFML/Window.hpp>
#include <SFML/Graphics.hpp>
#include <cstring>
#include <cstdlib>
#include <iostream>
class Player
{
private:
float x;
float y;
float speed;
sf::RenderWindow window;
public:
Player(sf::RenderWindow win)
{
x = 640;
y = 360;
speed = 5;
window = win;
}
};
int main()
{
//Window Initialization
sf::RenderWindow window(sf::VideoMode(800, 600), "My window");
//Player Creation
Player player(window);
}
我认为问题可能与 const、引用等有关,但我对 C++ 不够熟悉,无法轻松识别它。我该如何解决这个问题?
最佳答案
您应该使用指向窗口对象的引用或指针,因为我认为您不会希望每个玩家都有自己的窗口。
因此您的播放器应该如下所示:
class Player
{
private:
float x;
float y;
float speed;
sf::RenderWindow& window; // reference
public:
Player(sf::RenderWindow& win) // accepts reference
: window(win) // stores reference
{
x = 640;
y = 360;
speed = 5;
// window = win;
}
};
关于c++ - 使用已删除的函数 ‘sf::RenderWindow& sf::RenderWindow::operator=(const sf::RenderWindow&)’,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31444949/
我是 C++ 的新手,所以请放轻松。 我正在尝试使用 sfml 创建 RenderWindow。然后,在创建播放器时,该播放器关联的“窗口”对象被设置为先前创建的 RenderWindow。我的目的是
这听起来可能是一个非常简单的问题,但我有 SFML 1.6,我想从另一个函数控制我的 RenderWindow...我不是很擅长 C++ 或 SFML...:) ///////////////////
我正在尝试使用sfml2设置OpenGL上下文。一切正常,我能够绘制一个三角形。在下一步中,我想在GL东西上用SFML绘制一些2D元素。因此,我首先将所有“窗口”条目更改为“RenderWindow”
所以我在探索 SFML 的过程中正在开发一个微型引擎。我目前正在使用 WindowManager 类。这是我的代码。 class WindowManager { private: sf::Re
所以我试图让 SFML 与 Visual C++ 2010 一起工作,它现在会打开窗口,但打开时看起来像这样。 当您尝试移动或关闭窗口时,该窗口也没有响应。这是我的代码: //////////////
我正在尝试使用下面给出的代码将 Ogre 嵌入到 Qt 中: https://github.com/gklingler/QOgreWidget 它在我的系统上运行良好,没有任何问题,但是当我尝试在我的
我知道这本质上是重复的,但是 this从来没有得到回答。我想提一下我有 followed the tutorial用于将 SFML 与 Visual Studio 一起使用,我正在运行一个带有 64
在 SFML C++ 中管理多个窗口时,我似乎遇到了一些麻烦。当我尝试管理多个窗口时,它们都可以正确打开并且我可以在较大的窗口中进行交互,但是较小的窗口在创建时与较大的窗口重叠,在我将大窗口移开之前我
恐怕我是从有限的 Python 经验中转向 C++ 的。在 Python 中,我经常使用 Tkinter 来处理我的 GUI,我可以将我的“ Canvas ”或“窗口”传递给存储它的其他类,然后可以绘
所以这可能是一件微不足道的事情,但我真的需要知道为什么它会以这种方式发生以及我该如何改变它。 所以我今天开始学习 SFML,我正在阅读 SFML 游戏开发电子书,看到非常有趣且编写得很好的代码。我学习
有一个模拟应用程序每个时间步输出一些 vtk 点数据,我想在每个时间步渲染这些数据并保持交互。 我创建了一个管道,它将模拟点 (points->SetInputData(data)) 作为输入并对其应
假设我有一段 C++ SFML 代码如下; void eventManager(sf::RenderWindow window) { event evnt; window.pollEv
因此,我一直在学习C++,并且一直在尝试通过一些视频来学习一些SFML 2。最初我没有真正的问题,我使用的是MS VS2012,一切都很好。我开始使用MS VS2015社区,但一切都开始出错,我也不知
我尝试在 C++ Windows 窗体项目(在这里也是新的 :D)中使用 SFML 的优势(我在这里还是新的)。我的想法是当一个事件发生时,这个 SFML 窗口会弹出显示图像。我已经设法让 SFML
我是一名新手 C++ 程序员,我不是专业人士。我对 C++ 中的模板很困惑。 我正在使用 SFML,我可以创建一个窗口并处理它。在下一步中,我决定编写一个模板函数来处理生成的关闭信号。但我的代码无法编
我刚开始学习 sfml,每当我运行以下代码并尝试移动它崩溃的窗口时: #include using namespace sf; int main() { RenderWindow windo
我的代码: #include int main() { sf::RenderWindow window(sf::VideoMode(800, 600), "SFML window");
我在制作 Label 和 Button 类。 Label 基本上用作附加到 Button 的文本,而 Button 具有按钮的纹理和其他一些东西。 我想自动化一些事情,这样你就不必分别调用每个按钮的绘
我使用 VTK 来显示点云并循环更新它。窗口可以通过鼠标进行交互第一次 我显示云,如果我想更新云,我必须按“q”,窗口将显示更新的云。然而,虽然云已更新并正确显示在窗口中,但我失去了对窗口的控制(即无
我有两个食人魔应用程序: 1) 子应用程序,渲染到窗口和纹理(使用相同的相机)。纹理被“导出”到共享内存(linux 中的 shm) 2) 主应用程序,其中一个平面显示 (1)“子应用程序”中发生的事
我是一名优秀的程序员,十分优秀!