我收到错误“无法在以下行中初始化类型为”const unsigned char *“的参数,其值为'value_type '(也就是char )的rvalue。
image->initWithImageData(&(buffer->front()),buffer->size());
缓冲区的类型为std::vector<char> *buffer
以及&(buffer->front()
上面的错误是否有人知道如何修复它?
答案 0 :(得分:3)
const不是问题,但你需要施放指针 - 一般不建议这样做但如果你没有其他选择,你可以做以下其中一种
char *a = buffer->data();
const unsigned char *b= reinterpret_cast<unsigned char *>(a);
或普通C风格
const unsigned char *b= (const unsigned char *)(a);