在类里定义了私有变量
private:
CDesCArrayFlat* iItemArray;
在 ConstructL里面这样初始化了下
void CPage::ConstructL(TInt iItemNumber,TInt aType){
CDesCArrayFlat* iItemArray = new (ELeave) CDesCArrayFlat(iItemNumber);
}
然后在其他类里调用这个指针老是没有 没有 找了好久
最后终于发现初始化了一个临时变量,而没有初始化类变量,只不过名字一样我就忘记了,主要原因是写错了,用临时变量用习惯了,郁闷啊 我的时间就这样浪费了。希望大家不要犯同样的错误
正确的初始化代码是这样的:
void CPage::ConstructL(TInt iItemNumber,TInt aType){
iItemArray = new (ELeave) CDesCArrayFlat(iItemNumber);
}
呵呵 大教训啊 以前也有这样的错误 但是都是一下就找到了,主要是太大意了 没有往这方面想,习惯弄逻辑了 晕 啊