我的类对象中有以下代码:
void Object::drawSurface()
{
GLUnurbsObj *nurbSurface;
nurbSurface = gluNewNurbsRenderer();
gluNurbsProperty( nurbSurface, GLU_SAMPLING_TOLERANCE, 25.0 );
gluNurbsProperty( nurbSurface, GLU_DISPLAY_MODE, GLU_FILL );
GLfloat knots[26] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 };
gluBeginSurface( nurbSurface );
gluNurbsSurface( nurbSurface, 26, knots, 26, knots,
13*3, 3, &points[0][0][0], 13, 13, GL_MAP2_VERTEX_3 );
gluEndSurface( nurbSurface );
}
还包括一个 .txt 文件,其中包含一个包含所有点的数组。
一切正常,直到我将我的类对象包含在任何其他类中。然后我得到这个错误:
ld: duplicate symbol _points in openglscene.o and main.o
collect2: ld returned 1 exit status
编译器表示在 txt 中声明的符号 points[]。我不知道为什么会出现这个错误