尝试直接获得指针兼容性。这是一个代码示例,展示了我难以理解的内容:
struct T
{
int dummy;
};
int main(int argc, const char * argv[])
{
T t;
const T* cpt = &t; //Ok.
const T** ppct = &cpt; //Ok.
T* pt = &t;
const T** ppct2 =&pt;
//The line above gives me
//Cannot initialize a variable of type
//'const T **' with an rvalue of type 'T **'
return 0;
}
在返回语句之前,我试图获取指向T的指针的地址,并将其指定给指向const T的指针。什么可能出错,对吧?我无法改变我指向的对象,但我不允许这样做。