我正在浏览上述项目的源代码,我不理解下面的代码行,有人能帮我解释一下吗?我试图让代码处理彩色图像,因为它目前只处理灰度图像。我有主要的工作方法,但是过滤器只适用于返回图像的前四分之一。
//在heeder文件中。
inline uint8_t* operator[](const int rowIndex) {
return m_yptrs[rowIndex];
}
//在.mm文件中
void Image::initYptrs() {
m_yptrs=(uint8_t **) malloc(sizeof(uint8_t *)*m_height);
for(int i=0; i<m_height; i++) {
m_yptrs[i]=m_imageData+i*m_width;
}
}
根据我的理解,它看起来像是在创建对图像中像素的引用,但是我不理解这行代码。
m_yptrs[i]=m_imageData+i*m_width;
事先谢谢。