c ++ передает символ в glShaderSource - PullRequest
0 голосов
/ 26 апреля 2018

Поэтому я продолжаю получать сообщение об ошибке «неверное преобразование из char ** в const GLchar **».Я читал подобные посты здесь об этой ошибке, но я все еще не могу исправить это, поэтому любая помощь будет высоко ценится.Ниже приведены фрагменты моей программы opengl c ++.У меня есть функция char, которая объявлена ​​следующим образом:

char *loadShaderFile(char *fileName)

В другой функции я делаю следующее:

    char *vertexShaderSource = loadShaderFile((char *)"vshader.glsl");
    glShaderSource(vertexShader, 1, &vertexShaderSource, NULL);
    free(vertexShaderSource);

1 Ответ

0 голосов
/ 26 апреля 2018

Попробуйте добавить const квалификатор до char * объявления указателя, как показано ниже:

const char *vertexShaderSource = loadShaderFile((char *)"vshader.glsl");
glShaderSource(vertexShader, 1, &vertexShaderSource, NULL);
free(vertexShaderSource);
...