#include <iostream>
class ObjectInfo{
private:
static float Rotation;
public:
//sets object rotation value
void SetR(float a){ static float Rotation = a; }
//print roation value (I think this is where the problem is located)
void PrintR(){ std::cout << Rotation;}
};
int main()
{
ObjectInfo Wall;
//set float var
float Rotation;
//Get user set rotation
std::cin >> Rotation;
//set wall rotation
Wall.SetR(Rotation);
//print wall rotation value
Wall.PrintR();
std::cin >> Rotation;
}
错误1错误LNK2001:未解析的外部符号&#34; private:static float ObjectInfo :: Rotation&#34; (?Rotation @ ObjectInfo @@ 0MA)
错误2错误LNK1120:1个未解析的外部
这是我制作的原型,我不知道如何解决错误。
有人知道可能导致此错误的原因吗?
如果我尝试返回该值然后couting该值,我会得到同样的错误。
有没有人知道从类中撤回价值的改变解决方案?
答案 0 :(得分:0)
您需要为静态成员分配存储空间,
float ObjectInfo::Rotation;
在课堂定义之外。