2016-12-05 5 views
0

Я следую учебному пособию по основам lwjgl. В настоящее время я пытаюсь сделать простое окно. Однако у меня есть два вопроса.LWJGL Operation! = Undefined для типа boolean, int

В моем методе Init() Я пишу

if(glfwInit() != GL_TRUE){ 
    throw new IllegalStateException("Unable to initialize GLFW"); 
} 

и в моем методе Run() Я пишу

if(glfwWindowShouldClose(window) == GL_TRUE){ 
    running = false; 
} 

в обеих случаях я получаю

Exception in thread "EndlessRunner" java.lang.Error: Unresolved compilation problem: 
The operator != is undefined for the argument type(s) boolean, int 

at Main.init(Main.java:28) 
at Main.run(Main.java:43) 
at java.lang.Thread.run(Unknown Source) 

Однако, кажется, что все учебники используют эти строки так или иначе.

ответ

1

Отклонения Java этих методов не совсем такие же, как декларации C, поэтому вам нужно настроить свой код в соответствии с декларацией Java.

В обоих случаях эти методы возвращают boolean:

public static boolean glfwInit() 

public static boolean glfwWindowShouldClose(long window) 

так что вы используете их с помощью true и false, а не GL_TRUE и GL_FALSE:

if (glfwInit() != true) { 

if (glfwWindowShouldClose(window) == true) { 

Примечание: Если Eclipse, показывает Есть ошибки в вашем коде вы не сможете запустить его успешно.