我有一個結構,被稱爲着色器,其中包含以下信息:如何通過地址傳遞一個字符指針被接受爲char **?
struct Shader {
enum ValueType{ VT_Attribute, VT_Uniform, VT_Varying };
GLuint Memory;
GLenum Type;
char* Source;
char* Name;
std::map< Shader::ValueType, float* > Values;
};
但是,如果我這樣做:
glShaderSource(shaderMem, 1, &shader.Source, NULL);
我收到以下錯誤:
error: invalid conversion from 'char* const*' to 'const char**'
這是怎麼發生的?
Sscce.org。你確定它在抱怨第三個參數嗎? –