我在我的项目中遇到了这个错误,我似乎无法弄清楚,错误是
错误显式类型丢失('int 假定)
这就是我所拥有的;
船舶.cpp
Ship::Ship(){
rot = 0;
position.x = SCREEN_WIDTH / 2;
position.y = SCREEN_HEIGHT / 2;
velocity.x = .2;
velocity.y = .2;
radius = 0;
}
float Ship::&rotateLeft(){
if (rot < 0)
rot += 360;
rot-= velocity.x;
return rot;
}
float Ship::&rotateRight(){
if (rot > 360)
rot -= 360;
rot+= velocity.x;
return rot;
}
float Ship::&getRot(){
return rot;
}
船舶.h
#include "Physics.h"
class Ship : public Physics{
private:
float rot;
public:
float radius;
XMFLOAT2 size;
Ship();
float &rotateRight();
float &rotateLeft();
float &getRot();
};
物理.h
class Physics{
public:
XMFLOAT2 position;
XMFLOAT2 velocity;
};
这很奇怪,因为它告诉我 rot 和 velocity 在我的 rotateleft 函数中是未定义的,但它并没有在构造函数中抱怨。同样的功能也给了我错误显式类型丢失('int假定')。