c++ 是否可以在QT Creator中“取消定义”某个功能?[已关闭]

qrjkbowd  于 2023-01-18  发布在  其他
关注(0)|答案(1)|浏览(259)

17小时前关门了。
Improve this question
我正在尝试修改我在QT Creator中完成的应用程序,以便它可以在浏览器中运行。qopenglfunctions_3_2_core.h中的大部分代码被跳过,因为opengles2在下面的行中定义。

#if !defined(QT_NO_OPENGL) && !QT_CONFIG(opengles2)
/*
    The QT_CONFIG macro implements a safe compile time check for features of Qt.
    Features can be in three states:
        0 or undefined: This will lead to a compile error when testing for it
        -1: The feature is not available
        1: The feature is available
*/
#define QT_CONFIG(feature) (1/QT_FEATURE_##feature == 1)

使用clang时,QT_CONFIG(opengles2)返回0,语句的计算结果为true。使用emscripten时,QT_CONFIG(opengles2)返回1,语句的计算结果为false,这将跳过文件的其余部分。我正在尝试找到一个解决方法。

68bkxrlz

68bkxrlz1#

#include <QOpenGLFunctions_3_2_Core>更改为#include <QOpenGLFunctions_ES2>为我解决了这个问题。但是,似乎有一些变量没有继续使用,例如

  • GL_线_平滑
  • glVertexAttribI指针
  • glPoint大小

如果有人知道解决这个问题的方法,请告诉我。同时,我会继续挖掘。

相关问题