我正在尝试制作游戏,我为玩家创建了一个类.该类继承了"Entity",它继承了QGraphicsItem.
#ifndef PLAYER_H
#define PLAYER_H
#include "entity.h"
class Player : public Entity
{
public:
    Player( QString, int, int, int position );
    QRectF boundingRect() const;
    void paint( QPainter *painter,
                const QStyleOptionGraphicsItem *option,
                QWidget *widget );
    void move_north();
    void move_south();
    void move_west();
    void move_east();
    void start_moving();
    void stop_moving();
    void switch_step();
    bool its_moving();
    void change_pos(int);
private:
    QPoint position;
    bool is_moving;
private signals:
    void Move();
};
#endif // PLAYER_H
但我仍然在第33行收到错误的"预期":'在'受保护'之前'.
// private signals:
signals:
应该没有访问修饰符signals,您只对插槽执行此操作.
在MOC内部,Qt用自己的访问修饰符替换信号,这是受保护的来源.
这个答案有一些相关的见解.信号是定义的protected,因此您的代码将被转换为private protected:编译器所抱怨的.
换句话说,你不能说private signals:.说吧signals:.
| 归档时间: | 
 | 
| 查看次数: | 645 次 | 
| 最近记录: |