【发布时间】:2013-08-23 21:26:39
【问题描述】:
这是我的头文件:
class MapObject: public ScreenObject {
static float xoffset, yoffset;
public:
static float Getxoffset() {
return xoffset;
}
};
#endif // MAPOBJECT_H
不过return xoffset就行了;我收到以下错误: 对“MapObject::xoffset”的未定义引用 为什么?
【问题讨论】:
-
你从未定义过
xoffset,只是声明了它。将其放在一个源文件的全局范围内:float MapObject::xoffset;。 -
您是否在 .cpp 源文件中定义了静态
xoffset和yoffset以提供正确的链接?请记住,非常量静态变量必须在外部定义并在类中声明。 -
你需要把它放在.cpp文件中的静态变量:
float MapObject::xoffset等。但是你确定要那些静态变量吗? -
@WhozCraig 不是私下声明的吗?
-
有趣是有道理的,感谢您提供的信息。生病删除我的评论。
标签: c++