0
我想創建一個SFML RenderWindow對象作爲參數傳遞的對象,但它不是簡單的工作,它始終抱怨指針和我以錯誤的方式使用它們。SFML通過構造函數獲取窗口到另一個類不工作
在這裏,你有我的.h文件:
#include <iostream>
#include <SFML\System.hpp>
#include <SFML\Window.hpp>
#include <SFML\Graphics.hpp>
using namespace sf;
class Shot
{
private:
RenderWindow &mainWindow;
public:
Shot(RenderWindow &window);
void add(float x, float y, float velocity);
};
,在這裏我的.cpp
#include "Shot.h"
Shot::Shot(RenderWindow &window) : mainWindow(&window)
{
mainWindow -> window;
}
void Shot::add(float x, float y, float velocity)
{
CircleShape shape(10);
shape.setPosition(Vector2f(x, y));
shape.setFillColor(Color::Yellow);
mainWindow.draw(shape);
}
錯誤:
Error 1 error C2248: 'sf::NonCopyable::operator =' : cannot access private member declared in class 'sf::NonCopyable'
Error 2 error C2248: 'sf::NonCopyable::operator =' : cannot access private member declared in class 'sf::NonCopyable'
老實說,我不知道該怎麼現在的問題我可能完成了所有錯誤,但任何幫助真的會被讚賞! :)
問候
FreeSirenety
Shot的構造函數裏面的代碼是什麼? – Broxzier
您的標題和源代碼是相同的。不良複製過去。另外,給我們實際的錯誤信息。除此之外,不要在包含路徑中使用'\':這不是標準。使用'/'代替。 – Hiura
現在編輯並感謝您注意我的misstake! :) – FreeSirenety