2011-01-10 56 views
2

爲什麼我不能這樣做?初始化GLfloat

#include <gl/gl.h> 

GLfloat posX; 

posX=0.0f; 

Visual Studio中說:

錯誤C4430:缺少類型說明符 - INT承擔。注意:C++不 支持默認int

+0

你有#included``或類似的源文件嗎? – Anthony 2011-01-11 00:00:54

回答

14

文本

posX=0.0f; 

是在全局範圍內,因此被視爲一個聲明,而不是一個聲明。考慮:

#include "stdafx.h" 
#include <windows.h> 
#include <gl/gl.h> 

GLfloat posY = 0.0f; 

GLfloat posX; 
posX = 0.0f; 

GLfloat posZ; 

int _tmain(int argc, _TCHAR* argv[]) 
{ 
    posZ = 0.0f; 
    return 0; 
} 

然後posY,posZ編譯好,但posX顯示的問題。請注意,問題與GL無關;如果用普通的舊浮點數代替GLfloat,你會得到它。